PureBasic - SysTray

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Reichen dafür etwa 100 Zeichen? :mrgreen:

Und was ist bei CloseHandle_() ?
Da muss man auch irgendwas einsetzen. Nur was (String, Float, Long, Byte)?
BildBildBildBild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Programie hat geschrieben:Reichen dafür etwa 100 Zeichen? :mrgreen:
Sollten genügen :mrgreen:
Oder Du erzeugst einmalig eine GUID, die sollte einmalig sein.

Code: Alles auswählen

Procedure.s MakeGUID()
  LBuffer.s = Space(76)
  SBuffer.s = Space(38)
  CoCreateGuid_(GuidId.GUID)
  StringFromGUID2_(GuidId, LBuffer,76);
  WideCharToMultiByte_(0, 0, LBuffer, 76, SBuffer, 38, 0, 0);
  ProcedureReturn SBuffer
EndProcedure
Nachtrag:
Das was OnlyOne zurückgibt, ist der Wert, den Du an CloseHandle_(
übergeben mußt. So das Dein Programm, nach beenden wieder Startbar ist.
Ist ein Long, kann man aber alles an dem vom mir geposteten Beispiel erkennen.
Zuletzt geändert von ts-soft am 21.02.2006 17:40, insgesamt 1-mal geändert.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Und CloseHandle_() ? Was bekommt der Befehl? :?
BildBildBildBild
Benutzeravatar
AndyX
Beiträge: 1272
Registriert: 17.12.2004 20:10
Wohnort: Niederösterreich
Kontaktdaten:

Beitrag von AndyX »

siehe Win32.hlp -_-"
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Das Programm kann man immer noch mehrfach starten! Hier ist mal der Sourcecode.

Was denkt ihr, was da falsch ist? :?
BildBildBildBild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Mach doch mal bitte ein Zip (oder ähnlich) draus, so kann ich es nicht
downloaden.
Wahrscheinlich ist der String, den Du übergibst, nicht Konstant sondern wird
gebildet.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Hier der Sourcecode als Executable. :allright:
Zuletzt geändert von Programie am 22.02.2006 17:44, insgesamt 1-mal geändert.
BildBildBildBild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Wie gesagt, der String ist nicht Konstant, sondern wird gebildet, das kann nicht gehen.
MakeGuid() verwenden und den String in Deinem Code einfügen, z.B. so:

Code: Alles auswählen

Global Running
Running=OnlyOne("{544470D2-8FB0-49E3-8334-6E34309EC038}")
MakeGuid kannste aus dem eigentlichem Programm entfernen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Du hast doch mir erst gesagt, dass ich den Befehl MakeGUID() verwenden soll. Wieso jetzt doch nicht? :?
BildBildBildBild
Benutzeravatar
AndyX
Beiträge: 1272
Registriert: 17.12.2004 20:10
Wohnort: Niederösterreich
Kontaktdaten:

Beitrag von AndyX »

weil du ja selber auch eine GUID tippen kannst, siehe Ts-softs post.
Antworten