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
相关文档:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Button ......
一、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保存读取utf-8的文本文件
给客户做了一个批量识别图像并合成双层pdf的程序,最后客户需要生成的同时附带一份记事本文件,就是OCR过后的文本,并指定utf-8格式的。在处理utf-8时出现了点小问题,现在总结如下
首先 利用delphi自带的UTF8Encode函数,将普通字符转换为utf-8编码
创建一个流,MemoryStream或FileStr ......
//声明:
GetClassName(
hWnd: HWND; {指定窗口句柄}
lpClassName: PChar; {缓冲区}
nMaxCount: Integer {缓冲区大小}
): Integer; {返回类名大小; 失败返回 0}
//测试1: 新建一个工程, 主窗口的类名默认是 TForm1, 用程序获取一下看看
var
ps: array[0..254] of Char;
begin
GetCl ......
delphi指针简单入门:
看一个指针用法的例子:
1 var
2 X, Y: Integer; // X and Y 整数类型
3 ......