# Batch Programmierung -!dringend!-



## Invi (3. September 2003)

ich bin in der firma am programmieren mit batch. Dort will ich das Wort, dass in einer .txt datei steht als Variable nehmen. Wie stelle ich das an?
Ich habe schon soviel versucht und bekomme es einfach nicht hin. Wäre nett wenn mir da jemand helfen könnte!


----------



## chibisuke (10. September 2003)

also erstmal... du kannst eine datei nich in ne variable lesen so einfach...

aber versuchs mal so....

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
    FILE* file
    char word[100];
    char command[200];
    memset(word, 0, 100);
    if(argc < 3) {
        printf("nicht genug parameter - usage writeVar <filename> <varname>");
        return 1;
    }
    file = fopen(argv[1], "r");
    if(file == NULL) {
        printf("datei nicht gefunden");
        return 2;
    }
    fgets(word, 100, file);
    sprintf(command, "set %s=%s\n", argv[2], word);
    system(command);
    return 0;   
}

dieses mini programm  ( C Code) solltest du mit einem C Compiler für dos oder windows je nachdem (Turbo C eignet sich relativ gut) ohne probleme kompilieren kommen...

nun rufst du das programm auf mit 2 parametern.. der erste is der dateiname im dos format, der 2. is der name der variable...

die erste zeile in der datei oder die ersten 100 byte wenn die zeile länger is, langen in der umgebungsvariable, dann einfach nur noch schnell den errorlevel prüfen.. 
errorlevel = 2 -> datei nich gefunden
errorlevel = 1 -> zu wenig parameter
errorlevel = 0 -> alles OK;


----------

