Exe Datei "verlinken"

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Exe Datei "verlinken"

    Hy, hab mal ne frage:

    Gibts in GML einen Code für:

    Wenn man auf einen Link, Bild etc. klickt, öffnet sich eine andere exe Datei?

    Also so, dass man quazi ein Auswahlmenü für Programme erstellen kann z.B.

    Programme von *Name*

    Programm1:
    Blablabla

    Zum installieren klicke hier!

    Programm2:
    Blablabla

    Zum installieren klicke hier!



    und die Setups sind natürlich mit im Ordner des Programmes, also keine links zum downloaden.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von endlessmp ()

  • henrik1235 schrieb:

    Mach ein Object das nennst du obj_klick und machst eine Mask, und im Left Pressed Event:
    execute_program(prog,arg,wait) Führt das Programm prog mit den Argumenten arg aus. wait legt fest, ob das Spiel warten soll.
    MfG Henrik1235
    Wo kommt dann der Dateipfad hin? (Hab ne vermutung unterstrichen)?
    UND was sind argumente?

    THX!
  • Mach mal:

    GML-Quellcode

    1. if (!file_exists("C:/Programme/Internet Explorer/iexplorer.exe")) { show_message("Das Programm gibt es nicht"); exit; }
    2. if (secure_mode) { show_message("Spiel läuft im 'secure_mode'."); exit; }
    3. execute_program("C:/Programme/Internet Explorer/iexplorer.exe","",false)

    Warscheinlich gibt es die Datei nicht oder das Spiel läuft im secure_mode.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • Per default funktioniert übrigens auch der run command "iexplore" um den IE zu starten.

    GML-Quellcode

    1. execute_shell("iexplore","")

    Damit kannste den IE von jedem System aus starten ohne zu wissen wo die Installation vom IE liegt. Vorrausgesetzt natürlich der User hat nicht an seinen Umgebungsvariablen rumgespielt.
  • Der Game Maker sag dem Betribssytem (in diesem Fall Windows) das er eine Datei lesen/schreiben/starten will. Windows sucht in seinem Datensystem und dann gibt er alles dem Game Maker. D.h.: Du kannst auch auf der CD lesen.
    Z.b: Um zu prüfen ob die Spiele CD im Laufwerk ist:

    GML-Quellcode

    1. cd_init()
    2. if (cd_present()) //Ist eine CD im Standart Laufwerk
    3. {
    4. show_message("Du kannst weiter!");
    5. }
    6. else
    7. {show_message("Du brauchst die CD");
    8. }


    Das prüft nur ob eine CD im Laufwerk ist.
    Siehe:
    cd_init() Muss vor den anderen Funktionen aufgerufen werden. Sollte auch bei CD-Wechsel aufgerufen werden (oder einfach von Zeit zu Zeit).
    cd_present() Gibt an, ob im Standard-CD-Laufwerk eine CD vorhanden ist.
    Damit könnte man die Laufwerke rausfinden:

    GML-Quellcode

    1. //scr_disk_exists("Laufwerk")
    2. //Gibt wieder ob das "Laufwerk" gibt. (Wenn Daten drauf sind)
    3. var file,b;
    4. file="";
    5. b=argument0;//String: "Laufwerk Buchstaben"
    6. file=file_find_first(b+":/*.*",0);
    7. file_find_close();
    8. return file!="";

    Funktionen:
    Spoiler anzeigen
    file_find_first(mask,attr) Gibt den Namen der ersten Datei zurück, die mit der Maske und den Attributen übereinstimmt. Existiert keine solche Datei, wird ein Leerstring zurückgegeben. Die Maske kann einen Pfad und Auslassungszeichen enthalten, z.B. "C:\Temp\*.doc". Die Attribute geben die zusätzlichen Dateien an. (Die normalen Dateien werden also immer zurückgegeben, wenn sie mit der Maske übereinstimmen). Folgende Konstanten können als Attribute verwendet werden:
    fa_readonly schreibgeschützte Dateien
    fa_hidden versteckte Dateien
    fa_sysfile Systemdateien
    fa_volumeid Volume-ID Dateien
    fa_directory Verzeichnisse
    fa_archive archivierte Dateien
    file_find_next() Gibt den Namen der nächsten Datei zurück, die mit der vorher angegebenen Maske und den Attributen übereinstimmt. Existiert keine solche Datei, wird ein Leerstring zurückgegeben
    file_find_close() Muss nach allen file_find-Funktionen aufgerufen werden, um Speicher freizugeben.
    file_attributes(fname,attr) Gibt zurück, ob die Datei alle Attribute hat, die in attr angegeben sind. Benutze Kombinationen der oben angegebenen Konstanten.

    MfG Henrik1235
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • MeRobin schrieb:

    Welche Dateien? oO
    Das Problem wäre hierbei aber erstmal, dass der Laufwerk buchstabe nicht immer gleich ist.
    Wewnn der iexplore auf ner CD wäre, oder irgend ne andere Datei die ich dann starten will.
    Und das Problem hab ich auch befürchtet, deswegen die Frage.

    @henrik
    Danke für die Codes! Werde alles erst einmal Probieren!


    THX an alle!

    EDIT:
    Übrigends meinte ich das so:

    Findet er mit
    execute_shell("iexplore","")
    auch den iexplore, wenn er auf einer CD ist?
  • endlessmp schrieb:

    Findet er mit
    execute_shell("iexplore","")
    auch den iexplore, wenn er auf einer CD ist?
    Nein. Du kannst da nicht alles angeben was du willst. iexplore ist eine Art Sonderfall.

    Wenn die anderen Programme neben der ausführenden Datei sind, kannst du sie so aufrufen:

    GML-Quellcode

    1. execute_program("hallowelt.exe","",false);

    Wenn du bei dem letzten Argument statt false true angibst, wird das Spiel genau an der Stelle im Code warten, bis das andere Programm beendet wurde.