SysMenu abfragen
Übersicht BlitzBasic DLLs und Userlibs
SebastianBetreff: SysMenu abfragen |
So, Mai 01, 2005 15:45 Antworten mit Zitat |
|
---|---|---|
Hi @all
Ich hab ja gesagt das ich ne Dll schreiben werde um die Buttons in der Titelleiste eines Fensters abzufragen .... http://sebastians-site.de/ -> Userlibs Dazu folgender Sampelcode : Code: [AUSKLAPPEN] hWnd = GetActiveWindow() ;Api-funktion Const MINIMIZE = 1 Const MAXIMIZE = 2 Const CLOSE = 3 InitWinWatch(hWnd) ; Started Event-Captureing Repeat If CheckButton(MINIMIZE) Then Print "Minimize" ; Abfrage If CheckButton(MAXIMIZE) Then Print "Maximize" If CheckButton(CLOSE) Then Print "Close" Until KeyHit(1) StopWinWatch(hWnd) ; Beendet Even-Captureing ACHTUNG : Ohne diesen Befehl crashed die ANwendung beim Beenden !!!!!! End ;Sebastian 1,5,2005 Der sich ,denke ich, selbst erklärt .... Bugs könnt ihr meinetwegen essen oder behalten, ich habe den support sowie die Weiterentwicklung für sämtliche Applicationen/Libaries die ich unter Windows entwickelt hab eingestellt. Ich arbeite nur noch unter Unix/Linux. Die Dll ist unter GPL lizensiert. Ich bin auf diesem Forum nicht mehr aktiv und die dll stand schon unter GPL, bevor hier im Forum mit dem PD Quatsch angefangen worden war. Außerdem wurde ich, als inaktiver User in keinster Weise über die Änderung informiert, deshalb bezweifle ich, dass man mir wirklich eine Lizens aufzwingen kann. Wenn da irgendjemand aus der Administration was dagegen hat, ist dieser Thread zu löschen, Danke ! |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
- Zuletzt bearbeitet von Sebastian am Do, Feb 07, 2008 20:50, insgesamt 10-mal bearbeitet
noir |
So, Mai 01, 2005 16:35 Antworten mit Zitat |
|
---|---|---|
super gemacht! sehr nützlich!! | ||
Fragt und man wird euch helfen
Das Alternativ BlitzBasic-Forum: FreeCoder Einfach chatten: BlitzChat Code&Text schnell und einfach pasten: FreePasting |
skey-z |
So, Mai 01, 2005 20:29 Antworten mit Zitat |
|
---|---|---|
ist es für bplus geschrieben, unter b3d bekomme ich "Function 'getactivwindow' not found.
habe die dll und decls in den userlib ordner gepackt |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
noir |
So, Mai 01, 2005 20:42 Antworten mit Zitat |
|
---|---|---|
hat er wohl vergessen
musst du noch ergänzen *.decls .lib "user32.dll" GetActiveWindow%():"GetActiveWindow" |
||
Fragt und man wird euch helfen
Das Alternativ BlitzBasic-Forum: FreeCoder Einfach chatten: BlitzChat Code&Text schnell und einfach pasten: FreePasting |
skey-z |
Mo, Mai 02, 2005 0:11 Antworten mit Zitat |
|
---|---|---|
jep, habs ans ende der sysmenu.decls angehängt und nun funzt es
[Edit-28.07.05] ok, fals jemand darauf kommen sollte auf meinen post noch zu antworten, habe schon vor einiger zeit den extra userlib für die user32.dll erstellt [/Edit] |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
Sebastian |
So, Jan 22, 2006 15:36 Antworten mit Zitat |
|
---|---|---|
So jetzt hab ich ne iegene HP und kann die sysmenu.dll
endlich dauerhaft online lassen. 8) *Jubel* Also ich hoffe ,dass die Tatsache das ich keine Anfrage per mail zu der dll erhalten hab ,nur auf die Faulheit mir ne Mail zu schreiben zurückzuführen ist. mfg Sebastian |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
blitzatius |
Fr, Apr 28, 2006 14:17 Antworten mit Zitat |
|
---|---|---|
also, irgendwie hab ich probleme mit der sysmenu.dll:
Die kann nur in dem Verzeichnis liegen, wo auch das exe-programm liegt??? also erstmal mach ich beim quellcode: calldll("sysmenu.dll","Checkbutton") calldll("sysmenu.dll","InitWinWatch") calldll("sysmenu.dll","StopWinWatch") und dann kommt der übliche schrott, wie auch immer. also, die dll muss in dem verzeichnis liegen, im welchen die exe-datei liegt. Wisst ihr warum? ich würde die gerne in einen extra-ordner legen. Ps.: mit anderen DLL's geht das(in einen anderen ordner) |
||
Sebastian |
Sa, Apr 29, 2006 16:48 Antworten mit Zitat |
|
---|---|---|
Erst mal solltest du die userlib (.decls-datei) die ich in meiner unendlichen Güte beigelegt habe anstatt calldll benutzen. (Informier dich mal zu Thema userlibs benutzen)
An der Tatsache ,dass die dll im gleichen verzeichniss liegen muss kann ich leider nicht ändern ist halt so ...... Zitat: und dann kommt der übliche schrott, wie auch immer. Ist übrigens die genauste Problembeschreibung ever seen ...... |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
blitzatius |
So, Apr 30, 2006 14:43 Antworten mit Zitat |
|
---|---|---|
Sebastian hat Folgendes geschrieben: Zitat: und dann kommt der übliche schrott, wie auch immer. Ist übrigens die genauste Problembeschreibung ever seen ...... . Ehmm, ich meinte damit, dass dann der code meines prorgamms folgt. ist übrigens egal. was dann folgt, wollt nur sagen, damit ihr nicht meint, dass ich nur die 3-zeilencode hab Und noch zu der .decls-datei: Die benötigt man nur bei programmieren. Also wenn ich jetzte eine .exe-datei erzeuge, dann spielt die .delcs-datei keine rolle mehr? |
||
Sebastian |
So, Apr 30, 2006 15:42 Antworten mit Zitat |
|
---|---|---|
calldll("sysmenu.dll","Checkbutton")
calldll("sysmenu.dll","InitWinWatch") calldll("sysmenu.dll","StopWinWatch") 1. Zunächstmal ist der Source absolut sinnlos. Du musst die .decls-Datei benutzen. Über Calldll bringen dir die Funktionen gar nix, weil sie keine sinnvollen Parameter haben. 2. Für eine EXE ist die decls nicht mehr nötig. Mal ne dämliche Frage : Weißt du überhaupt was du mit der decls datei machen sollst ??? |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
blitzatius |
So, Apr 30, 2006 19:18 Antworten mit Zitat |
|
---|---|---|
na. klar weiss, was man mit der .decls-datei machen muss: in dend userlib ordner reintun geminsam mit der dll. So ganz dumm bin ich nun auch wieder nicht
Mine Problem mit der SYsmenu.dll ist, dass die im gleichen verzeichnis, wie die .exe-datei sein muss |
||
Sebastian |
Mo, Mai 01, 2006 13:06 Antworten mit Zitat |
|
---|---|---|
Und warum dann calldll ????
Hach is ja auch egal ..... Also das die dll im selben Verzeichniss liegen muss daran kann man leider nix änder is in Blitzbasic halt so ..... Man könnte sie höchstens ins system32-Verzeichniss (wars galub ich) von windows kopieren, das geht auch ..... |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
blitzatius |
Di, Mai 02, 2006 13:25 Antworten mit Zitat |
|
---|---|---|
hi. also, dass die dll im selben verzeichnis bei blitzbasic liegen liegen muss, stimmt nicht, denn ich benutz auch noch eine andere dll(blitzSYS.dll) und die hab ich in einem unterVerzeichnis, und diese funktioniert einwandfrei.
Zitat: Und warum dann calldll ????
Wenn ich eine DLL erstelle, dann weiss das Programm doch nicht, woher die Befehle sind??? |
||
Artemis |
Di, Mai 02, 2006 14:17 Antworten mit Zitat |
|
---|---|---|
Hast du Blitz3D, BlitzPlus oder Blitz2D? | ||
blitzatius |
Di, Mai 02, 2006 14:48 Antworten mit Zitat |
|
---|---|---|
hi, ich hab blitz3d 1.89
testet bitte selber mal, ich hab bei mir auch voll lange rumprobiert, die dll in ein unterverzeichnis hineinzutun |
||
Artemis |
Di, Mai 02, 2006 15:24 Antworten mit Zitat |
|
---|---|---|
|
||
Sebastian |
Mi, Mai 03, 2006 14:36 Antworten mit Zitat |
|
---|---|---|
Wobei Schritt 3 überflüssig ist.
Das hab ich gleich nachdem es hier aufgefallen ist angefügt. |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
blitzatius |
Mi, Mai 03, 2006 14:55 Antworten mit Zitat |
|
---|---|---|
@ Artemis:Dankeschön So funktioniert es . Jucheii.
also so: .lib "subdir/SysMenu.dll". Hatte gar nicht gewusst, dass man sowas auch machen kann |
||
Übersicht BlitzBasic DLLs und Userlibs
Powered by phpBB © 2001 - 2006, phpBB Group