检测你的程序是否运行在虚拟机(VMware)

王朝delphi·作者佚名  2006-01-09
宽屏版  字体: |||超大  

//------------------------------------------------------------------

构建一个函数,使用了汇编语言啊,嘿嘿!

// -------------------开始-----------------------------------------

function IsVMwarePresent(): LongBool; stdcall;

begin

Result := False;

{$IFDEF CPU386}

try

asm

mov eax, 564D5868h

mov ebx, 00000000h

mov ecx, 0000000Ah

mov edx, 00005658h

in eax, dx

cmp ebx, 564D5868h

jne @@exit

mov Result, True

@@exit:

end;

except

Result := False;

end;

{$ENDIF}

end;

//------------------form http://blog.csdn.net/laoli----------------------------------------------------------

//---------------------------测试一下-----------------------------------------------------------------------------------

rocedure TForm1.FormCreate(Sender: TObject);

begin

if IsVMwarePresent then

ShowMessage('你运行在虚拟机')

else

ShowMessage('正常运行')

end;

//---------------------------------------------------------------------------------------------------------------------------

//----------------先保存---------按F9,运行,晕!有提示信息.不理!再按F9,:正常运行',哈哈!

//------------------------------------->转载请注名出处和作者,尊重别人,也就是尊重自己.....................

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有