maddin Geschrieben 12. August 2002 Geschrieben 12. August 2002 Hallo, ich würde in einem 16 Bit- Programm ganz gerne eine DOS- Variable erstellen ändern. Bloß habe ich keine Ahnung, wie ich das machen kann. Mit dem Funktionsaufruf system("set new=C:\\TC") habe ich es bereits versucht, funktioniert bloß nicht. Die Variable sollte auch nach dem Beenden des Programms noch verfügbar sein. Entwicklungsumgebung: Borland TurboC++ 1.01 DOS 16 Bit
Crush Geschrieben 12. August 2002 Geschrieben 12. August 2002 Also ich kenne die Microsoft-Version. Ich weiß aber nicht, ob das beim TurboC++ genauso ist, da mußt Du halt mal im Zweifelsfall die Header durchsuchen: #include <stdlib.h> void main( void ) { char *libvar; /* Get the value of the LIB environment variable. */ libvar = getenv( "LIB" ); if( libvar != NULL ) printf( "Original LIB variable is: %s\n", libvar ); /* Attempt to change path. Note that this only affects the environment * variable of the current process. The command processor's environment * is not changed. */ _putenv( "LIB=c:\\mylib;c:\\yourlib" ); /* Get new value. */ libvar = getenv( "LIB" ); if( libvar != NULL ) printf( "New LIB variable is: %s\n", libvar ); }
maddin Geschrieben 12. August 2002 Autor Geschrieben 12. August 2002 es gibt beim TurboC++ 1.01 eine Funktion putenv. Diese Funktion verändert auch schön brav die Umgebungsvariablen. Allerdings werden die Änderungen wieder rückgängig gemacht, wenn das Programm beendet wird.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden