易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi 能不能从Ring 3进入Ring 0

Delphi 能不能从Ring 3进入Ring 0?
楼主skyworld_xm(skyworld)2004-11-19 09:58:55 在 Delphi / Windows SDK/API 提问
Delphi   能不能从Ring   3进入Ring   0?  
  有例子吗?  
  多谢. 问题点数:100、回复次数:20Top
1 楼jinjazz(近身剪)回复于 2004-11-19 10:13:27 得分 10
我发现了一篇发表在1999.11.29   b13版的  
  《令win32应用程序跳入系统层》东南大学   卢威   luwei@126.com  
  是用vc++嵌汇编做的,  
  很接近了,可试试  
   
  BCB或DELPHI进入Ring0  
  东南大学卢威1999.12发表在<<计算机世界>>报上的一篇  
  <<WIN32跳入系统0层>>,原采用VC++编程,现改成C++Builder  
  供诸位参考,DELPHI类似;    
   
   
  void   Ring0Proc()     //   在Ring0中执行你自已的代码  
  {  
          //   .......  
          asm   mov   eax,CR0;     //   试验一下Ring3不能执行的特权指令  
          //   .......  
  }  
  //   =====================================================  
  void     __declspec(naked)   NewInt()   //新中断  
  {  
              Ring0Proc();  
              asm     iretd;  
  }  
  #define     IntNo     9  
  DWORDLONG     IDTR,SavedGate;  
  WORD   OurGate[4]={0,0x0028,0xee00,0x0000};  
  void     GotoRing0()  
  {  
              asm  
                  {  
                    &nb


相关文档:

怎样在Delphi中调用EXE文件


//加一下按钮,加一个对话框就OK啦
procedure TForm1.Button1Click(Sender: TObject);
var
S: String;
begin
if OpenDialog1.Execute then
begin
s := OpenDialog1.FileName;
WinExec( PChar(s), SW_NORMAL);
end;
end;

----------------------- ......

Delphi 的 Dll 函数的 调用


一、Dll建立
(一)DLL项目的建立
library mydll;
 
uses
base in 'base.pas';
 
exports
Triple name 'Tr';
 
{$R *.res}
 
begin
end.
 
(二)函数单元
unit base;
 
interface
 
uses windows;
 
function Triple(N:integer):integer;stdcall;
  ......

好书推荐 突破Delphi 7.0编程实例五十讲

本书融合了在Windows下利用Delphi 7.0开发应用程序的理论和实践,全面而深入地介绍了利用Delphi 7.0开发应用程序的常用方法和技巧。内容包括用户界面设计、图形图像编程、文件管理、多媒体技术、系统控制、网络和数据库编程以及游戏制作等内容。   详细阅读突破Delphi 7.0编程实例五十讲,来自IT电子图书馆 ......

DELPHI GetClassName 获取指定窗口的类名

//声明:
GetClassName(
hWnd: HWND; {指定窗口句柄}
lpClassName: PChar; {缓冲区}
nMaxCount: Integer {缓冲区大小}
): Integer; {返回类名大小; 失败返回 0}
//测试1: 新建一个工程, 主窗口的类名默认是 TForm1, 用程序获取一下看看
var
ps: array[0..254] of Char;
begin
GetCl ......

delphi指针简单入门

delphi指针简单入门:  
   
  看一个指针用法的例子:  
  1         var  
  2             X,   Y:   Integer;       //   X   and   Y   整数类型  
  3 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号