WEB开发网
开发学院软件开发Delphi 检测你的程序是否运行在虚拟机(VMware) 阅读

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

 2006-02-04 14:30:42 来源:WEB开发网   
核心提示://--构建一个函数,使用了汇编语言啊,嘿嘿!// ---开始-function IsVMwarePResent(): LongBool; stdcall; begin Result := False; {$IFDEF CPU386} try asm mov eax, 564D5868h mov ebx, 00000

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

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

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

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,:正常运行',哈哈!


Tags:检测 程序 是否

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接