B
base7
Unregistered / Unconfirmed
GUEST, unregistred user!
有这样一个函数(网上抄来的):
我的主程序中调用了这个函数后,只要进行任何一步其他的操作,如:
btnOK.Enable := True;
时就会产生access violation的错误,个人认为应该是SendMsg函数中写了(或读了)未开辟的内存区
可是怎么改也不行,诸位熟悉Win编程和DLL调用的大侠能帮帮忙吗?(调用了netapi32.dll)
代码:
function SendMsg(Toh,Msg:string):integer;
var
ToName: array [0..63] of WideChar;
WMsgText: array [0..999] of WideChar;
MsgLen, I:integer;
begin
for I := 0 to 63 do ToName[i] := #0;
for I := 0 to 999 do WMsgText[i] := #0;
StringToWideChar(Toh, ToName, 64);
StringToWideChar(Msg, WMsgText, 1000);
// MsgLen := Length(Msg);
Result:=NetMessageBufferSend(nil,ToName,nil,@WMsgText,MsgLen);
end;
我的主程序中调用了这个函数后,只要进行任何一步其他的操作,如:
btnOK.Enable := True;
时就会产生access violation的错误,个人认为应该是SendMsg函数中写了(或读了)未开辟的内存区
可是怎么改也不行,诸位熟悉Win编程和DLL调用的大侠能帮帮忙吗?(调用了netapi32.dll)