Wenn ich heute schon mal so schön am Programmieren bin...
Manchmal erzeuge ich in meinen Batchdateien (oft mithilfe eines aufgerufenen EXE-Files Hilfsdateien, die ich mittels CALL dann explizit aufrufe und die möglichst eindeutig sein sollten, damit ein parallel gleichzeitig ausgeführtes Batchfile in einer anderen DOS-Box mit diesen nicht in Konflikt gerät. (Soll nur der Hintergrund sein: Muss man nicht verstehen...)
Dazu würde ich in jeder DOS-Box gerne eine Environment-Variable haben, die einen eindeutigen Wert besitzt, d.h. keine zwei gerade laufenen DOS-Boxen haben für diese Variable dieselbe Belegung.
???????-------
? Wie kann ich einen solchen Wert in C finden?
Z.B. würde der Einspringpunkt des dieser DOS-Box zugeordneten Command/CMD-Befehls gehen? Wäre der bei jedem Aufruf immer anders? Wie kann man den ermitteln?
???????--------
Vielen Dank,
Mdl
Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge
Hallo CrE
und danke für den Tipp.
GETPIDS gibt ja ein paar Zahlen wieder, bei meinen Versuchen immer 4 Stück.
Wenn ich die Anleitung richtig verstehe, dürfte die vorletze Zahl beim Direktaufruf von GETPIDS dem CMD Befehl zugeordnet sein. D.h. habe ich zwei oder mehr DOS-Boxen offen und rufe GETPIDS auf, müsste die vorletzte Zahl bei jeder DOS-Box unterschiedlich sein.
? Ist das richtig?
(Bei meinen Tests waren diese Zahlen nie gleich, aber nur weil ich bei 20 Versuchen nie in die Mitte einer Dart-Scheibe getroffen habe, heißt das ja nicht, dass das ja nicht dass unmöglich ist...)
(Falls ja könnte ich die in der Ausgangsfrage gesuchte, für jede DOS-Box eindeutige Environment-Variable einfach mit diesem Wert belegen und das Problem wäre gelöst...)
Viele Grüße,
Mdl