wwwllg
驱动牛犊
驱动牛犊
  • 注册日期2004-07-04
  • 最后登录2016-03-22
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1219回复:2

我在2k下写的wdm,在没有装ddk的XP机子上,用scm方式安装死机,而装了ddk以后,又没有问题?---50分

楼主#
更多 发布于:2004-08-16 14:24
我在2k下写的wdm,在没有装ddk的XP机子上,用scm方式安装死机,而装了ddk以后,又没有问题?

在2k下,都没有问题。

在xp下,安装死机,但是卸不掉,返回1052的错误码。

[编辑 -  8/16/04 by  wwwllg]
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2004-08-16 15:12
真的很奇怪,贴上原代码看看??
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
wwwllg
驱动牛犊
驱动牛犊
  • 注册日期2004-07-04
  • 最后登录2016-03-22
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-08-16 15:23
估计不是这的问题。
我想是不是,装了ddk后,多加载了一些,平时xp不加载的驱动,或dll.
还有我用的是free版本的sys.

void HookSomeAPI()
{
if(m_bHook)
return;
_realRegOpenKey = (RealRegOpenKey)(SYSCALL(ZwOpenKey));
CHAR * temp = (CHAR *)FindFunc(FindNtoskrnl(),"NtCreateToken");
if(temp == NULL)
{
DbgPrint( "NtCreateToken hook erro! \n" );
return;
}
_realNtCreateTokenindex = *((PULONG) &temp[1]);
_realNtCreateToken = (RealNtCreateToken)SYSCALL2(_realNtCreateTokenindex);
DbgPrint( "NtCreateToken index%d -- %x\n",_realNtCreateTokenindex,_realNtCreateToken );

    _asm cli
SYSCALL(ZwOpenKey) = (PVOID)HookRegOpenKey;
SYSCALL2(_realNtCreateTokenindex) = (PVOID)HookNtCreateToken;
    _asm sti

        SeRegisterLogonSessionTerminatedRoutine( HookLogoff );

m_bHook = true;
}
游客

返回顶部