阅读:1255回复:8
怎样把驱动隐藏在可执行文件的资源里?用户被禁言,该主题自动屏蔽! |
|
最新喜欢:![]() |
沙发#
发布于:2004-11-19 16:49
用NtSetSystemInformation函数并指定SystemLoadAndCallImageInformation参数就可以实现动态加载驱动,且不需要安装。
|
|
|
板凳#
发布于:2004-11-17 13:05
用户被禁言,该主题自动屏蔽! |
|
地板#
发布于:2004-11-17 10:20
怎样做才能使驱动动态加载呢? 晕,就是你用startservice加载后不会有问题的, 有些驱动必须在系统启动的时候加载,有些就不用,我也不知道怎么说了,你自己试试吧 |
|
地下室#
发布于:2004-11-16 12:54
用户被禁言,该主题自动屏蔽! |
|
5楼#
发布于:2004-11-16 09:51
动态加载驱动可以通过CreateService,StartService,
前提是你的驱动是可以动态加载的 |
|
6楼#
发布于:2004-11-15 19:43
用户被禁言,该主题自动屏蔽! |
|
7楼#
发布于:2004-11-15 15:05
顶
|
|
|
8楼#
发布于: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; } |
|