Форум: "Начинающим";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
ВнизID скрытого процесса Найти похожие ветки
← →
8shar © (2009-04-07 18:13) [40]
type
TAttachConsole = function (dwProcessId: DWORD): LongBOOL stdcall;
var
AttachConsole: TAttachConsole;
mProcessID, Hcwnd: Cardinal;
procedure TForm1.FormCreate(Sender: TObject);
begin
@AttachConsole := GetProcAddress(GetModuleHandle("kernel32.dll"), "AttachConsole");
GetWindowThreadProcessId(FindWindow(nil,"C:\WINDOWS\system32\cmd.exe"),@mProcess ID);
AttachConsole(mProcessID);
end;
function TForm1.ReadCMD(x, y: byte): string;
const
SMB = 4;
var
chRead: Cardinal;
BufInfo: _CONSOLE_SCREEN_BUFFER_INFO;
lpCh : PChar;
Coord: _COORD;
begin
Hcwnd:=GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo (Hcwnd, BufInfo);
GetMem(lpCh,SMB);
Coord.X:=x;
Coord.Y:=y;
ReadConsoleOutputCharacter(Hcwnd,lpCh,SMB,Coord,chRead);
Result:=copy(lpCh,1,SMB);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Add(ReadCMD(22,1));
end;
А вот это уже рабочий код, мы получаем 4 символа из CMD стоящие начиная с позиции x y передаваемой аргументами функции.
Спасибо всем огромное!!!
А насчет нанят программиста, я студент, учусь программить....
Вот....
Страницы: 1 2 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.009 c