Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Wie kann ich feststellen ob ein Programm läuft?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
26.10.2003, 10:15 Uhr
Luke



Hallo,
wie kann ich mit einem VC++ Programm feststellen ob ein anderes Programm läuft?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.10.2003, 10:30 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
kommt darauf an ob Du den Process selbst startest oder nicht.
Wenn Du z.B. Mit CreateProcess() ein Programm startest, kannst Du die Struktur "LPPROCESS_INFORMATION" auswerten.
Sonst: alle Processe auflisten und vergleichen. Da das Thema schon oft behandelt wurde: "Suche" nutzen.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 26.10.2003 um 10:31 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.10.2003, 13:13 Uhr
Luke



Sorry, ich finde keinen Eintrag mit dem ich was anfangen kann... da ist einer mit nem link zu einem "EnumProcessTest" Projekt, mit dem ich aber nichts anfangen kann da ich das programm nicht mal in seiner urform kompilieren kann (psapi.h wird nicht gefunden).
Sonst sieht der Code gar nicht schlecht aus, ich kann ihn nur ohne die headerdateien von dem projekt nicht nutzen:

Code:
int main(void)
{
    CEnumProcess enumeration;
    enumeration.SetMethod(m_enumMethod);
    CEnumProcess::CProcessEntry entry;

    CString s;

    for (BOOL OK = enumeration.GetProcessFirst(&entry); OK; OK = enumeration.GetProcessNext(&entry) )
    {
        if(entry.lpFilename == "test.exe")
        {
            cout>>"Found Programm running...\n";
        }        
    }
    return 0;
}


Das würde mir schon reichen, geht nur so nicht. Kann mir jemand sagen wie ich darankomme?

Dieser Post wurde am 26.10.2003 um 13:18 Uhr von Luke editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.10.2003, 13:20 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
    DWORD dw;
    HANDLE hSysSnapshot = NULL;
    PROCESSENTRY32 proc;

    proc.dwSize = sizeof(proc);
    hSysSnapshot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0 );
    Process32First(hSysSnapshot,&proc);
    proc.dwSize = sizeof(proc);
             int flag=0;

    do{
                if(!strcmp(proc.szExeFile,"test.exe")) ++flag;
    }while(Process32Next(hSysSnapshot,&proc));
             //wenn flag!=0 ist läuft der prozess flag mal sonst nicht wenn du nur wissen willst ob es überhaupt einmal läuft dann so verwenden
while(!flag && Process32Next(hSysSnapshot,&proc));




--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 26.10.2003 um 13:23 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.10.2003, 13:38 Uhr
DerLiebeGast



@Luke:
Das sieht nach einem überfälligem SDK Update aus

MfG DerLiebeGast
--
if(lesen)
wissen++;
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.10.2003, 13:50 Uhr
Luke



Ich habe vor 2 Wochen ServicePack5 installiert...
Der Code da oben is gut, im Debug funced er auch... aber relase bekomme ich die fehlermeldung

Code:
nafxcw.lib(thrdcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __endthreadex
nafxcw.lib(thrdcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __beginthreadex
Release/process_check.exe : fatal error LNK1120: 2 unaufgeloeste externe Verweise
Fehler beim Ausführen von link.exe.

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.10.2003, 14:36 Uhr
DerLiebeGast



Service Pack 5 ist leider auch nicht auf dem aktuellen Stand .
Hast du in den Projekteinstellungen eine der Multithreaded Laufzeitbibliotheken ausgewählt?

Projekt->Einstellungen-> Reiter C++ -> CodeGeneration-> Laufzeitbibliothek= Multithreaded Dll.

MfG DerLiebeGast
--
if(lesen)
wissen++;
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.10.2003, 14:55 Uhr
Luke



nö, hatte ich nicht... is auch keine gute idee:

Code:
Linker-Vorgang läuft...
nafxcw.lib(appcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol ___argv
nafxcw.lib(appcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol ___argc
nafxcw.lib(filelist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __mbctype
nafxcw.lib(timecore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __mbctype
nafxcw.lib(apphelp.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __mbctype
Release/process_check.exe : fatal error LNK1120: 3 unaufgeloeste externe Verweise
Fehler beim Ausführen von link.exe.


Die fehler verdreifachen sich...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
26.10.2003, 15:15 Uhr
DerLiebeGast



Auf jeden Fall stimmt irgendwas mit deinen Projekteinstellungen nicht!
Wenn du mit mehreren Threads arbeiten möchtest brauchst du auch eine von den Multithreaded Laufzeitbibliotheken.Hast du auch mal Multithreaded probiert?
Was ist den in der Debugkonfiguration für ne Laufzeitbibliothek?
--
if(lesen)
wissen++;
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
03.11.2003, 15:03 Uhr
Luke



Multithreaded hab ich probiert, ging auch nicht...
Wie bekomme ich raus welche bibliotheken beim debuggen bentzt werden? Sind das nicht die selben?
Was bedeutet eigentlich "Multithreaded" und wozu muss ich das für dieses Programm benutzen? Bisher brauchte ich das auch nicht...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: