003
03.09.2009, 15:31 Uhr
~mkRE
Gast
|
C++: |
//---------------------------------------------------------------------------
#include <vcl.h> #pragma hdrstop
#include "UWinAPI.h" #include <windows.h> #include <Psapi.h> #pragma comment(lib, "User32.lib") //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; BOOL CALLBACK ShowAllWindows(HWND hwnd,LPARAM lParam);
//--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {
//--------------------------------------------------------------------------- // Callback-Funktion schreibt Titelleisten-Texte aller gefundenen Non-Child- // Fenster in die ListBox: //--------------------------------------------------------------------------- BOOL CALLBACK ShowAllWindows(HWND hwnd,LPARAM lParam) { char pcWinTitle[256]; // Für Fenster-Titel... // Falls kein Child-Fenster: if(!GetWindow(hwnd, GW_OWNER)) { // Fenster-Title (Caption) auslesen: GetWindowText(hwnd, pcWinTitle, 255); // Falls Titel vorhanden in die Listbox einfügen: if(AnsiString(pcWinTitle).Trim() != EmptyStr) Form1 -> ListBox1 -> Items -> Add(pcWinTitle); } // true zurückgeben, um Aufzählung fortzusetzten: return TRUE; }
//--------------------------------------------------------------------------- // Beenden aller Rechner-Instanzen: //--------------------------------------------------------------------------- BOOL CALLBACK KillAllCalcInstances(HWND hwnd,LPARAM lParam) { char pcWinTitle[256]; // Für Fenster-Titel... DWORD pid = 0; // Für die Process-Id HANDLE hProcess; // Process-Handle
// Falls kein Child-Fenster: if(!GetWindow(hwnd, GW_OWNER)) { // Fenster-Title (Caption) auslesen: GetWindowText(hwnd, pcWinTitle, 255); // Falls Win-Rechner, Fenster schliessen: if(AnsiString(pcWinTitle) == "Rechner") { //------------------------------------- // und hier entweder höflich nachfragen, // was das Programm vom Beenden hält: PostMessage(hwnd, WM_CLOSE, 0,0); //------------------------------------- // oder einfach Process beenden: // Process-Id besorgen: // GetWindowThreadProcessId(hwnd, &pid); // Process mit allen Zugriffsrechten öffnen: // hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid); // und tschüss... // TerminateProcess(hProcess, 0); } // true zurückgeben, um Aufzählung fortzusetzten: return TRUE; }
}
|
Hallo leute habe mir diesen Code abgeschrieben und ein Projekt erstellt wie es vorgegeben ist habs auf www.source-community.de gefunden leider Stoppt mein Compiler bei BOOL CALLBACK ShowAllWindows(HWND hwnd,LPARAM lParam) mit den fehlermeldungen unten:
[C++ Fehler] UWinAPI.cpp(25): E2108 Ungültige Verwendung von typedef 'BOOL' [C++ Fehler] UWinAPI.cpp(25): E2379 In Anweisung fehlt ; [C++ Fehler] UWinAPI.cpp(110): E2134 Abschließendes } fehlt
was mach ich den jetzt dort falsch ist doch alles Richtig???
meine güte kann doch nicht so schwer sein???oder was agt ihr?? Dieser Post wurde am 04.09.2009 um 09:17 Uhr von FloSoft editiert. |