定义的TrayData如下
Type
TrayData = record
hWnd :Uint;
uid :Uint;
uCallBackMessage :Uint;
Reserved1 :Array[0..1]of dword;
hIcon :Longint;
Reserved2 :Array[0..5]of dword;
ExePath :array [0..255] of widechar;
Tip :array [0..255] of wideChar;
Reserved3 :array [0..3] of WORD;
end;获取的代码如下:
ret:=SendMessage(h_Tray, TB_GETBUTTON, i, LPARAM(Point));
ReadProcessMemory(h_Process,point,(@btn_ico),sizeof(btn_ico),nNumberOfBytesRead);
ReadProcessMemory(h_Process,pointer(btn_ico.dwdata),pointer(integer(@tray)),sizeof(tray),nNumberOfBytesRead);
为什么我获得到的tip和路径只是如"dows\systems\TTplayer.exe"这样不全的.
对如路径,如果我用sizeof(tray)+12,的话就是是完整的路径了,不懂为什么,还有,那个ret好像不用也没事,但是看见好多代码里都有用,它有什么用呢?
Type
TrayData = record
hWnd :Uint;
uid :Uint;
uCallBackMessage :Uint;
Reserved1 :Array[0..1]of dword;
hIcon :Longint;
Reserved2 :Array[0..5]of dword;
ExePath :array [0..255] of widechar;
Tip :array [0..255] of wideChar;
Reserved3 :array [0..3] of WORD;
end;获取的代码如下:
ret:=SendMessage(h_Tray, TB_GETBUTTON, i, LPARAM(Point));
ReadProcessMemory(h_Process,point,(@btn_ico),sizeof(btn_ico),nNumberOfBytesRead);
ReadProcessMemory(h_Process,pointer(btn_ico.dwdata),pointer(integer(@tray)),sizeof(tray),nNumberOfBytesRead);
为什么我获得到的tip和路径只是如"dows\systems\TTplayer.exe"这样不全的.
对如路径,如果我用sizeof(tray)+12,的话就是是完整的路径了,不懂为什么,还有,那个ret好像不用也没事,但是看见好多代码里都有用,它有什么用呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货