Seite 3 von 4

Verfasst: 21.02.2006 17:31
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)?

Verfasst: 21.02.2006 17:37
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.

Verfasst: 21.02.2006 17:39
von Programie
Und CloseHandle_() ? Was bekommt der Befehl? :?

Verfasst: 21.02.2006 18:29
von AndyX
siehe Win32.hlp -_-"

Verfasst: 22.02.2006 17:23
von Programie
Das Programm kann man immer noch mehrfach starten! Hier ist mal der Sourcecode.

Was denkt ihr, was da falsch ist? :?

Verfasst: 22.02.2006 17:34
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.

Verfasst: 22.02.2006 17:42
von Programie
Hier der Sourcecode als Executable. :allright:

Verfasst: 22.02.2006 17:49
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.

Verfasst: 22.02.2006 17:52
von Programie
Du hast doch mir erst gesagt, dass ich den Befehl MakeGUID() verwenden soll. Wieso jetzt doch nicht? :?

Verfasst: 22.02.2006 17:59
von AndyX
weil du ja selber auch eine GUID tippen kannst, siehe Ts-softs post.