sharkmouse
禁止发言
禁止发言
  • 注册日期2003-05-05
  • 最后登录2016-04-11
  • 粉丝0
  • 关注0
  • 积分1355分
  • 威望7163点
  • 贡献值1点
  • 好评度24点
  • 原创分0分
  • 专家分0分
阅读:1253回复:8

怎样把驱动隐藏在可执行文件的资源里?

楼主#
更多 发布于:2004-11-15 12:06
用户被禁言,该主题自动屏蔽!

最新喜欢:

TH1999TH1999
tooflat
论坛版主
论坛版主
  • 注册日期2002-07-08
  • 最后登录2014-03-11
  • 粉丝2
  • 关注0
  • 积分1007分
  • 威望551点
  • 贡献值3点
  • 好评度476点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-15 15:04
把驱动程序作为资源添加进VC的工程里面
Insert -> Resource -> Import
选择你的驱动程序,然后确定,输入资源类型,比如"BINARY"
然后执行下面的代码,就可以把资源提取到指定文件

BOOL ExtractResToFile(UINT nRes, LPCTSTR lpszFile)
{
HRSRC hRes = FindResource(NULL, MAKEINTRESOURCE(nRes), "BINARY");
if (!hRes)
{
return FALSE;
}

DWORD dwSize = SizeofResource(NULL, hRes);
if (0 == dwSize)
{
return FALSE;
}

HGLOBAL hData = LoadResource(NULL, hRes);
if (!hData)
{
return FALSE;
}

LPVOID lpData = LockResource(hData);

FILE *fp = fopen(lpszFile, "wb");
if (!fp)
{
return FALSE;
}

if (fwrite(lpData, 1, dwSize, fp) != dwSize)
{
fclose(fp);
return FALSE;
}

fclose(fp);
return TRUE;
}
aasa2
驱动中牛
驱动中牛
  • 注册日期2004-04-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分525分
  • 威望339点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-11-15 15:05
技术交流:aasa2@21cn.com QQ群:10863699
sharkmouse
禁止发言
禁止发言
  • 注册日期2003-05-05
  • 最后登录2016-04-11
  • 粉丝0
  • 关注0
  • 积分1355分
  • 威望7163点
  • 贡献值1点
  • 好评度24点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-11-15 19:43
用户被禁言,该主题自动屏蔽!
tooflat
论坛版主
论坛版主
  • 注册日期2002-07-08
  • 最后登录2014-03-11
  • 粉丝2
  • 关注0
  • 积分1007分
  • 威望551点
  • 贡献值3点
  • 好评度476点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-11-16 09:51
动态加载驱动可以通过CreateService,StartService,
前提是你的驱动是可以动态加载的
sharkmouse
禁止发言
禁止发言
  • 注册日期2003-05-05
  • 最后登录2016-04-11
  • 粉丝0
  • 关注0
  • 积分1355分
  • 威望7163点
  • 贡献值1点
  • 好评度24点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-11-16 12:54
用户被禁言,该主题自动屏蔽!
tooflat
论坛版主
论坛版主
  • 注册日期2002-07-08
  • 最后登录2014-03-11
  • 粉丝2
  • 关注0
  • 积分1007分
  • 威望551点
  • 贡献值3点
  • 好评度476点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-11-17 10:20
  怎样做才能使驱动动态加载呢?


晕,就是你用startservice加载后不会有问题的,
有些驱动必须在系统启动的时候加载,有些就不用,我也不知道怎么说了,你自己试试吧
sharkmouse
禁止发言
禁止发言
  • 注册日期2003-05-05
  • 最后登录2016-04-11
  • 粉丝0
  • 关注0
  • 积分1355分
  • 威望7163点
  • 贡献值1点
  • 好评度24点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-11-17 13:05
用户被禁言,该主题自动屏蔽!
liwashington
驱动小牛
驱动小牛
  • 注册日期2004-04-30
  • 最后登录2010-10-21
  • 粉丝0
  • 关注0
  • 积分-11分
  • 威望98点
  • 贡献值1点
  • 好评度12点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-11-19 16:49
用NtSetSystemInformation函数并指定SystemLoadAndCallImageInformation参数就可以实现动态加载驱动,且不需要安装。
我只想有个好老婆,每天有几顿好饭吃……
游客

返回顶部