各位大神,我想用DELPHI編程讀取外部程式上容器類控制元件里面的內容,比如外部程式的狀態欄控制元件里面的。以下是網路上來的,但vcount=0,獲取不成功,希望能得到您的幫忙。
function GetStatusBarText(mHandle: THandle): string;
var
vBuffer: array[0..$1000] of Char;
vSize: Integer;
I: Integer;
vCount: Integer;
vProcessId: DWORD;
vProcess: THandle;
vPointer: Pointer;
vNumberOfBytesRead: Cardinal;
begin
Result := '';
vCount := SendMessage(mHandle, SB_GETPARTS, 0, 0);
if vCount <= 0 then Exit;
GetWindowThreadProcessId(mHandle, @vProcessId);
vProcess := OpenProcess(PROCESS_VM_OPERATION or PROCESS_VM_READ or
PROCESS_VM_WRITE, False, vProcessId);
vPointer := VirtualAllocEx(vProcess, nil, $1000, MEM_RESERVE or MEM_COMMIT,
PAGE_READWRITE);
try
for I := 0 to vCount - 1 do
begin
vSize := SendMessage(mHandle, SB_GETTEXT, I, 0) + 1;
SendMessage(mHandle, SB_GETTEXT, I, Integer(vPointer));
ReadProcessMemory(vProcess, vPointer, @vBuffer[0],
vSize, vNumberOfBytesRead);
Result := Result + #9 + vBuffer;
end;
Delete(Result, 1, 1);
finally
VirtualFreeEx(vProcess, vPointer, 0, MEM_RELEASE);
CloseHandle(vProcess);
end;
end;
uj5u.com熱心網友回復:
msctls_statusbar32 控制元件uj5u.com熱心網友回復:
此狀態條是msctls_statusbar32 控制元件 的派生類
uj5u.com熱心網友回復:
外部程式不是delphi做的?uj5u.com熱心網友回復:
Delphi編程獲取Delphi編程的軟體,容易獲取,其它的不太好辦。uj5u.com熱心網友回復:
對方程式是VC做的轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/80239.html
