Форум: "Система";
Текущий архив: 2003.12.23;
Скачать: [xml.tar.bz2];
ВнизXP чтоб его =( хелп плиз! Найти похожие ветки
← →
WinLamka (2003-10-16 17:41) [0]Зрдавствуйте уважаемые мастера!
Вот возникла пара вопросов... Я пишу программу для удаленного контроля\администрирования компьютеров (не троян). Проблемы возникли следующие:
1) Получение списка запущеных программ. Моя программа должна будет следить за запущенными программами на удаленном компьютере, и при появлении запрещенных (игрушек например или msblast =))оповещать об этом админа. Я делаю это так (примитив конечно, но я пока не мастер в такого рода делах)
f:=tstringlist.Create;
Wnd := GetWindow(Handle, gw_HWndFirst);
while Wnd <> 0 do begin
if (Wnd <> Application.Handle)
and (GetWindowText(Wnd, buff, sizeof(buff)) <> 0)
then begin
GetWindowText(Wnd, buff, sizeof(buff));
p:=StrPas(buff);
if IsWindowVisible(Wnd)=false then p:="[hidden] "+p;
if (GetWindow(Wnd, gw_Owner) <> 0)then p:="[child] "+p;
f.Add(p);
end;
Wnd := GetWindow(Wnd, gw_hWndNext);
end;
f.SaveToFile(ExtractFilePath(Application.ExeName)+"\proc.lst");
На win2k и win9x все пашет идеально, но в вин ХР максимум что я получаю это следующее:
[child] [hidden] Form1
[hidden] BadApplicationNotificationWindow
[hidden] resetservice
[hidden] SYSTEM AGENT COM WINDOW
что у меня не так? помогите пожалуйста.
2) Получение скриншота экрана. Я нашел для этого такой код :
Canva := TCanvas.Create;
B := TBitmap.Create;
DC := GetDC(0);
try
Canva.Handle := DC;
with Screen do
begin
B.Width := Width;
B.Height := Height;
B.Canvas.CopyRect(Rect(0, 0, Width, Height),
Canva, Rect(0, 0, Width, Height));
B.SaveToFile(ExtractFilePath(Application.ExeName)+"sys.bmp");
end
finally
ReleaseDC(0, DC);
B.Free;
Canva.Free
end
end;
проблема таже - в вин ХР получаю белый рисунок.
подскажите плиз что можносделать!
заранее спасибо.
← →
VMcL (2003-10-16 18:59) [1]1)
ToolHelp (tlhelp32.pas), PsAPI (psapi.pas)
2)
Canva := TCanvas.Create;
B := TBitmap.Create;
DC := GetDC(0);
try
Canva.Handle := DC;
with Screen do
begin
B.Width := Width;
B.Height := Height;
B.Canvas.CopyRect(Rect(0, 0, Width, Height),
Canva, Rect(0, 0, Width, Height));
B.SaveToFile(ExtractFilePath(Application.ExeName)+"sys.bmp");
end
finally
ReleaseDC(0, DC);
B.Free;
Canva.Free
end
end;
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.12.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c