VBScript in C++



  • ungefähr so?!

    #include <iostream>
    #include <fstream>
    #include <string>
    #include <windows.h>
    using namespace std:
    
    int main()
    {
     String filename;
     cout<<"Dateinamen eingeben:";
     cin>>filename;
    
     ifstream stream;
     stream.open(filename.c_str(), std::ios::in | std::ios::binary);
    
     if(!stream->is_open())
     {
      system(filename);
      out<<"Datei wurde nicht gefunden und ausgeführt"<<endl;
     }
     else
     {
      cout<<"Datei wurde nicht gefunden"<<endl;
     }
    
     return 0;
    }
    


  • PS: Aber dein code stimmt imho nicht ganz, weil die messagebox immer geöffnet wird, uach wenn die datei nicht gefunden wird.



  • Datei wurde nicht gefunden und ausgeführt

    ??? 🙂



  • PPS:
    im code ist stream kein pointer und hinter std sollte ein strichpunkt sein, habs leider eilig ... ciao



  • eher so

    if(stream->is_open()) // !weg
     {
      out << "Datei wurde gefunden und wird jetzt ausgeführt" << endl; // Message geändert
      system(filename);
     }
     else
     {
      cout<<"Datei wurde nicht gefunden"<<endl;
     }
    


  • melon233 schrieb:

    ungefähr so?!

    #include <iostream.h>
    #include <fstream.h>
    #include <string.h>
    #include <windows.h>
    using namespace std:
    
    int main()
    {
     String filename;
     cout<<"Dateinamen eingeben:";
     cin>>filename;
    
     ifstream stream;
     stream.open(filename.c_str(), std::ios::in | std::ios::binary);
    
     if(!stream->is_open())
     {
      system(filename);
      out<<"Datei wurde nicht gefunden und ausgeführt"<<endl;
     }
     else
     {
      cout<<"Datei wurde nicht gefunden"<<endl;
     }
    
     return 0;
    }
    

    Vielen Dank melon233, ich hoffe das funktioniert auch. Aber warum machst du das nicht viel einfacher mit einer Try-Catch-Struktur und nicht mit void main (void) ?



  • Wo willst du hier ein try/catch unterbringen? ifstream wirft defaultmäßig keine exceptions.
    void main(void) ist und war nie Bestandteil von C++ (Standard) und sollte deswegen auch nicht verwendet werden. Ordentliche Compiler geben da eh eine Fehlermeldung.



  • void main(void) ist ein bestandteil von c++, also wenn du das nicht weißt, dann weiß ich auch nicht weiter...



  • Hallo

    ist es ganz bestimmt nicht, siehe zum Beispiel hier.

    bis bald
    akari



  • wieso denn immer diese unsinnige diskussion: ob void, int, parameter, rückgabewert IST DOCH SCHEIß EGAL!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


  • Mod

    melon233 schrieb:

    wieso denn immer diese unsinnige diskussion: ob void, int, parameter, rückgabewert IST DOCH SCHEIß EGAL!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    die diskussion ist tatsächlich unsinnig - eben weil es nicht egal ist.


Anmelden zum Antworten