亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關注微信公眾號

如何利用139端口來遠程重起NT服務器
2007-02-12   中國IT實驗室

最近很多朋友問我:NT的機器如果遠程管理軟件壞了,怎么重起呢?其實,如果服務器的139端口開著,重起是很簡單的,步驟如下:

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;

}

熱詞搜索:

上一篇:DOS環境巧妙破除WindowsXP登陸密碼
下一篇:嵌入式Linux系統的GDB遠程調試的實現

分享到: 收藏