Delphi : Half Life Starten mit Optionen

  • Hallo,
    hab mal wieder ein kleines Programm gemacht, was Maps in ein Spiel einfügt. Jetzt soll man aber mit dem Programm direkt die Map starten können.

    Der Code um Half Life zu starten wäre:

    PHP
    uses ShellAPI;
    
    
    procedure ...
    begin
      ShellExecute(0, 'open', 'c:\programm.exe', nil, nil, SW_NORMAL);
    end;

    Der funktioniert auch, aber wie man es vielleicht kennt soll das Spiel mit der Console gestartet werden. Dazu macht man ja normalerweise eine verknüpfung, und tippt bei ziel dahinter noch -console. Das soll jetzt aus Delphi heraus schon gesehen. Zusätzlich soll dann in diese Console noch ein Befehl eingegeben werden und dieser dann auch ausgeführt werden.
    Ich hab leider keine ahnung wie ich das anstellen soll :(

    HP DL-580 G7
    2x Intel Xeon E7-2870 (10 x 2,4GHz)
    96GB DDR3-1333 RAM
    NVIDIA GeForce GTX 1080 MSI (Blower)
    Samsung 850 Pro 512GB auf PCIe Karte
    4TB Seagate billigfieh
    72GB 10K HP Drive

  • JFGI. Der vierte Parameter zu ShellExecute ist das, was du suchst, dämlich die ans Programm zu übergebenen Parameter.

    Außerdem solltest du eigentlich anstatt von Delphi-Strings C-Strings für diese Funktion benutzen, welche du mithilfe der Funktion PChar() erhältst.

    Siehe auch: Die Windows-API-Funktion ShellExecute, um die herum diese Delphi-Funktion nur ein dünner Wrapper mit denselben Parametern ist.

  • Auf der Seite war ich auch schon, leider versteh ich das nicht :(

    Könntest du mir vl. den Befehl direkt anpassen?

    also es müsste halt mit der Console (-Console) gestartet werden und in die Console der Befehl: "map it beta" (ohne " ) und dieser soll auch ausgeführt werden.

    Danke :)

    HP DL-580 G7
    2x Intel Xeon E7-2870 (10 x 2,4GHz)
    96GB DDR3-1333 RAM
    NVIDIA GeForce GTX 1080 MSI (Blower)
    Samsung 850 Pro 512GB auf PCIe Karte
    4TB Seagate billigfieh
    72GB 10K HP Drive

  • Beispiel für das Retail-HL mit Counter-Strike als Mod:


    Für das Steam-basierende Half-Life hingegen gilt, dass man zwar nach wie vor hl.exe aus dem entsprechenden steamapps-Ordner aufrufen kann, man aber richtigerweise die Steam.exe mit dem Parameter -applaunch, der ID des gewünschten Spiels und den Parametern für das Spiel aufrufen sollte, z. B. als

    Code
    C:\Program Files\Steam\Steam.exe -applaunch 10 -console +map cs_italy

    Hoffentlich hattest du nicht vor, manuell mit Sendkey-Befehlen den Map-Befehl in die Konsole einzugeben, wenn man Konsolenbefehle direkt an das Spiel mit Plus-Parametern weitergeben kann. ;)

  • ok das programm macht was es soll, nur bei missbrauch dient es als Portal 2 nosteam crack :D

    HP DL-580 G7
    2x Intel Xeon E7-2870 (10 x 2,4GHz)
    96GB DDR3-1333 RAM
    NVIDIA GeForce GTX 1080 MSI (Blower)
    Samsung 850 Pro 512GB auf PCIe Karte
    4TB Seagate billigfieh
    72GB 10K HP Drive

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!