如何不重启系统加载.SYS文件
2004-10-10 19:33
381 查看
首先,SYS的加载控制是在注册表里,START控制,你肯定已经知道了,我
就不多说了。
可以用控制面版DEVICE,这个你已经知道了,还可以用NET START XXX
和NET STOP XXX来启动和加载,这个你肯定也知道了。
用DEVICE和NET START的方法都必须先在注册表里填好,然后启动机器
然后NET START XXX,其实可以不用重启动机器的(动态加载的SYS)
在程序里加载的程序是这样的
BOOLEAN
StartPacketDriver( LPTSTR ServiceName )
{
BOOLEAN Status;
SC_HANDLE SCManagerHandle;
SC_HANDLE SCServiceHandle;
/* Open a handle to the SC Manager database. */
SCManagerHandle = OpenSCManager(
NULL, /* local machine */
NULL, /* ServicesActive database */
SC_MANAGER_ALL_ACCESS); /* full access rights */
if (SCManagerHandle==NULL) {
MessageBox(NULL,TEXT("Could not open SC"),NULL,MB_OK);
return FALSE;
} else {
SCServiceHandle=OpenService(SCManagerHandle,
ServiceName,
SERVICE_START
);
if (SCServiceHandle == NULL) {
MessageBox(NULL,TEXT("Could not open service"),NULL,MB_OK);
}
Status=StartService(
SCServiceHandle,
0,
NULL
);
if (!Status) {
if (GetLastError()==ERROR_SERVICE_ALREADY_RUNNING) {
return TRUE;
}
}
return Status;
}
return FALSE;
}
就这么简单.
就不多说了。
可以用控制面版DEVICE,这个你已经知道了,还可以用NET START XXX
和NET STOP XXX来启动和加载,这个你肯定也知道了。
用DEVICE和NET START的方法都必须先在注册表里填好,然后启动机器
然后NET START XXX,其实可以不用重启动机器的(动态加载的SYS)
在程序里加载的程序是这样的
BOOLEAN
StartPacketDriver( LPTSTR ServiceName )
{
BOOLEAN Status;
SC_HANDLE SCManagerHandle;
SC_HANDLE SCServiceHandle;
/* Open a handle to the SC Manager database. */
SCManagerHandle = OpenSCManager(
NULL, /* local machine */
NULL, /* ServicesActive database */
SC_MANAGER_ALL_ACCESS); /* full access rights */
if (SCManagerHandle==NULL) {
MessageBox(NULL,TEXT("Could not open SC"),NULL,MB_OK);
return FALSE;
} else {
SCServiceHandle=OpenService(SCManagerHandle,
ServiceName,
SERVICE_START
);
if (SCServiceHandle == NULL) {
MessageBox(NULL,TEXT("Could not open service"),NULL,MB_OK);
}
Status=StartService(
SCServiceHandle,
0,
NULL
);
if (!Status) {
if (GetLastError()==ERROR_SERVICE_ALREADY_RUNNING) {
return TRUE;
}
}
return Status;
}
return FALSE;
}
就这么简单.
相关文章推荐
- 如何不重启系统加载.SYS文件
- 如何不重启系统加载.SYS文件
- 如何不重启系统加载.SYS文件
- 如何不重启系统加载.SYS文件
- 木马如何利用Windows系统文件System.ini和Win.ini加载运行
- 如何在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件 | Linux 中国
- linux下SourceInsiht如何加载Linux系统的文件
- ubuntu系统如何使保存在tmp目录下的文件在重启系统后不会消失
- 如何在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件
- [网摘]如何把光盘镜像ISO文件系统预置加载到目录
- 如何在linux正常启动的系统中(挂载rootfs)某个目录下来加载ubi文件类型的recoveryfs?
- ubuntu下如何使用sshfs加载远程服务器目录到本地文件系统
- (转载整理)程序安装流程及如何实现文件在系统后自动重启(windows)
- 修改完linux bashrc文件之后,如何不重启系统使其生效
- AM335x的UBIFS文件系统如何撑过十万次掉电重启
- 如何实现一个文件系统(之二)
- Solaris下如何mount Dos 文件系统
- 2006年08月09日 星期三 上午 07:29防止sql注入,通常一个一个文件修改不仅麻烦而且还有漏掉的危险,下面我说一上如何从整个系统防止注入。
- Windows 7系统下如何查看文件属性
- 不要重启!诺顿居然将系统文件当病毒