Semaphoren, Mutex, Eventcounts



  • Es gibt doch Programme, die nur ein mal gestartet werden können. Ich habe gelesen, dass das mit Mutex, Semaphoren od. Eventcounts realisiert ist. Diese werden vom System verwaltet und jeder Prozess kann diese anfordern.

    Ich will jetzt irgendwie diese (existierenden) Variablen auflisten, um von gestarteten Programmen diese Var. hochzählen zu können (in einem c-Programm vorwiegend unter Windows!) um dieses Programm mehrfach starten zu können. Code für das Hochzählen habe ich schon gefunden! Ich muss nur noch die existierenden Var. wissen!



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • ich weiss nicht wie es den anderen geht... aber ich versteh nicht ganz was du machen willst 😕

    Willst du ein Programm das nur einmal gestartet werden kann öfter starten?



  • Ich will ein Programm schreiben, dass es mir ermöglicht, Semaphoren, Eventc. usw. anzuzeigen (alle definierten am besten mit Werten) und diese zu verändern!

    Anwendung findet dieses bei Programmen wie Dreamweaver bzw. Photoshop (diese Programme kann man nur einmal starten). Ich will eben die betreffende Semaphore, Mutex usw. verändern, damit man dieses öfter starten kann.



  • Ich wüsste nich wie man die Dinger auflisten könnte ausser durch Namen für die Mutexe/Semaphoren durchprobieren, was langsam und eher ne fuckel-lösung wäre 😉

    (Ich wüsste auch nich, wozu man photoshop 2x starten können müsste, aber das soll dein Vorhaben nicht kritisieren ;D)



  • geeky schrieb:

    Ich wüsste nich wie man die Dinger auflisten könnte ausser durch Namen für die Mutexe/Semaphoren durchprobieren,

    unter windoof werden die alle vom 'object-manager' verwaltet. den kann man auch abfragen: guckt ihr: http://www.sysinternals.com/ntw2k/freeware/winobj.shtml



  • Wie kann ich jetzt den Wert verändern oder sogar löschen?



  • Nicht legal, und wahrscheinlich auch nicht illegal.

    Es ist außerdem nicht gesagt, daß die entsprechenden Programme dann auch problemlos parallel laufen. Was hast Du denn eigentlich vor?



  • Ich habe ein kleines Auswertungsprogramm für Turniere und will mehere Turniere gleichzeitig auswerten. Das Problem ist jetzt, dass sich das Programm nicht mehrfach starten lässt.

    Das Programm legt ein Mutex an. Ich will jetzt das Mutex verändern bzw. löschen (je nachdem was hilft).

    bez. Legalität: Das sind "Schranken" und haben den Sinn, dass mehrere Programme darauf zugreifen um den Zugriff auf globale Variablen zu steuern. Ich glaube nicht, dass das illegal ist.



  • Mit OpenMutex und ReleaseMutex könnte es doch vielleicht gehen. (wenn du den Mutex-Namen hast) 😕



  • Sorry, mein post scheint nicht angekommen zu sein. Nochmal...

    Kleines Mißverständnis - "illegal" nicht im Sinne des Gesetzes, sondern was die Schnittstelle (hier: WinAPI) erlaubt. Mir ist auch keine "illegale" Variante bekannt.

    Mit OpenMutex und ReleaseMutex könnte es doch vielleicht gehen. (wenn du den Mutex-Namen hast)

    bringt nix.
    Du kannst es mal mit mehrfachen CloseHandle's versuchen, aber da glaub ich nicht dran. Und wie gesagt, selbst wenn Du den Mutex abschießen kannst, ist nicht gesagt, daß die Anwendung immer noch sauber läuft.


Anmelden zum Antworten