各位大神,我想用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;