.bat startet nicht



  • nein, ich wollte nur das ihr einen koplett übersicht habt.
    erklär mir bitte "close", hab im MSDN nachgeguckt aber nicht´s gefunden was mir so auf dei schnelle weiter hilft.



  • Was gibt es da zu erklären.
    Wenn man eine Datei öffnet muss sie auch wieder geschlossen werden da Windows den Zugriff sperrt (Je nach Parametern bei open)

    CFile member close
    Beschreibung solltest du in der MSDN finden.



  • Ist doch eigentlich ganz einfach:

    Mit Open meldest Du beim Betriebssystem an, daß auf Du die Datei "Dev.bat" zugreifen möchtest und mit Close sagst Du daß Du die Operation abgeschlossen hast.



  • dank euch. funktioniert jetzt alles wie gewollt.
    hab cf.close(); vor ::ShellExecute aufgerufen.

    aber, warum funktioniert es mit dem abbrechbutton ohne das ich die datei schließe???



  • Ließ dazu bitte mal mein erstes Posting !



  • sorry, was soll das für eine antwort sein??? Antwortest du immer mit fragen???

    zitat:

    Da stellt sich mal wieder die Frage wie lange eine Locale Variable oder Klasseninstanz gültig ist und ob CFile im Destructor close aufruft.



  • OH MANO.

    Wenn du eine Locale Instanz von CFile erstellst ist diese nach dem verlassen der Funktion nicht mehr existent.
    Im Destuctor von CFile wir das File automatisch geschlossen.

    Das es nun geschlossen ist kannst du mit einer neuen Funktion wieder auf das File zugreifen.

    Ein paar Grundlagen würde ich dir schon empfehlen zum wissen.



  • dank dir, wieder was gelernt.

    sorry, das ich noch nicht der "c-gott" bin wie du, aber des wegen komme ich doch hier ins forum. ich weiß wenn ich hier poste bekommme ich schnelle und verständliche hilfe.



  • Ich bin nicht der c-Gott!

    Bevor man aber komplexe Sachen macht sollte man sich vorher die Grundlagen ansehen.
    Dies sind nicht komplexe oder erweiterte Grundlagen sondern unbedingt notwendige.
    Wie z.B wie definiere ich eine Klasse in einer Headerdatei.
    Dies ist auch nichts gegen dich persönlich sondern ein Ratschlag.



  • ich denke schon das ich die grundlagen von c++ kenne, wußte nur nicht das eine locale instanz einer klasse beim verlassen der funktion gelöscht werden.

    so denke wir sollten das thema an der stelle beenden.
    dank noch ma.



  • ich denke schon das ich die grundlagen von c++ kenne

    char szData[255];
    strcpy((char*)szData, m_pfad);
    try
    {
      cf.SeekToBegin();
      cf.Write( szData, strlen( szData ) );
    }
    

    Sorry, wenn wir dich aufgrund des obigen Codes zu den absoluten Anfängern zählen, aber wer sonst würde den Inhalt einer 1l-Flasche in einen Messbecher schütten, um rauszufinden, wieviel in die Flasche passt?



  • ich kann dir leider nicht folgen:

    char szData[255]; //große von szData festlegen
    strcpy((char*)szData, m_pfad); //CString m_pfad nach szData kopieren
    try //szData in die .bat schreiben
    {
    cf.SeekToBegin();
    cf.Write( szData, strlen( szData ) );
    }


Anmelden zum Antworten