Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

21

20.03.2007, 13:28

Danke, :D

hast aber wahrschienlich recht, muss mir das Buch von Kalista nochmal durchlesen. :roll:

aber naja habe erstmal das was ich wollte (und Probiere es gleich aus).

nochmals Danke :!:

mfg
BloodRaptor
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

22

21.03.2007, 17:50

Hi,

habe es so eingesetzt wie du geschireben hast.

Nachdem ich start gedrückt habe beendet er einfach. :evil:

mfg
BloodRaptor
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

23

21.03.2007, 17:52

ist auch logisch...

dort wo ich den kommentar hingemacht hab, sollte eben stehen was passieren soll, wenn er die exe nicht starten kann (nicht findet).

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{

    STARTUPINFO si;
    PROCESS_INFORMATION pi;

    ZeroMemory(&si, sizeof(si));
    si.cb = sizeof(si);
    ZeroMemory(&pi, sizeof(pi));

    if( !CreateProcess("C:\\WINDOWS\\system32\\notepad.exe", "", 0, 0, 0, 0, 0, 0, &si, &pi) )
        break;  // !!! sonst wartet er ja nur, wenn er die exe nicht starten kann -> extremst sinnlos


    WaitForSingleObject(pi.hProcess, INFINITE);

}

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

24

21.03.2007, 17:55

Der muss sie aber finden, habe ne Verknüpfung in Data angelegt.....
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

25

21.03.2007, 17:56

und du versuchst jetzt CreateProcess diese verknüpfung öffnen zu lassen oO

nimm den code den ich oben gepostet hab und setz dort den _genauen_pfad_der_exe_ ein (und pass auf, dass du \\ anstatt \ schreibst)
verknüpfung is nicht.

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

26

21.03.2007, 18:04

Sry ich schon wieder....

1. Habe es in C:\\Programme... gelinkt.
2. Er öffnet einfach nicht.

muss evtl. noch was auserdem hin was du in die geschweiften Klammern geschrieben hast?

mfg
BloodRaptor
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

27

21.03.2007, 18:07

ich kann leider von hier aus nicht debuggen...

welchen wert hat pi.hProcess und was gibt WaitForSingleObject() zurück?

wenn du diese frage nicht beantworten kannst, dann lern zuerst den debugger zu verwenden bevor du jetzt wieder nachfragst.

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

28

21.03.2007, 18:08

aso,
habe noch was von dll gelesen. muss ich noch da was ändern?

mfg
BloodRaptor
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

29

21.03.2007, 18:09

dll?

sag jetzt bitte nicht, dass du ernsthaft versuchst eine dll zu starten oO

poste einfach mal deinen code!

Task-Manager

Alter Hase

Beiträge: 1 087

Wohnort: am PC

Beruf: Student

  • Private Nachricht senden

30

21.03.2007, 18:16

ok,
der Code.
Ich glaube die dll starte ich nit.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
case 0: // Spiel starten

                // Spielzustand auf GS_GAME setzen

                {
                STARTUPINFO si; 
                PROCESS_INFORMATION pi; 

                ZeroMemory( &si, sizeof(si) ); 
                si.cb = sizeof(si); 
                ZeroMemory( &pi, sizeof(pi) ); 

                if( !CreateProcess("C:\\Programme\\EA GAMES\\Battlefield 2\\BF 2", "", 0, 0, 0, 0, 0, 0, &si, &pi) )
                break;
                // fehler beim starten des programms (exe nicht gefunden etc.) 


                WaitForSingleObject(pi.hProcess, INFINITE);
                }
PostQuitMessage(0);
                tbDelay(100);
                break;


Habe nur das Buch von Kalista reicht das?

mfg
BloodRaptor
falls ichs i-wo vergessen hab:

mfg
Task-Manager

Rechtschreibfehler sind mein Eigentum und gewollt!

Werbeanzeige