⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cnutility.cpp

📁 这是一个远程控制程序
💻 CPP
📖 第 1 页 / 共 4 页
字号:

        try{
                if(Reg->OpenKey(KeyName,FALSE))
                {
                        if( Reg->ValueExists(OldName))
                        {
                                Reg->RenameValue(OldName,NewName);
                                Success = TRUE;
                        }
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
        return Success;
}

void CN_ShowDesktop(bool Flag)
{
        HANDLE hDesktop;
        hDesktop = FindWindow("Progman", NULL);
        if(!Flag)
        {
                ShowWindow(hDesktop, SW_HIDE);
        }
        else
        {
                ShowWindow(hDesktop, SW_SHOW);
        }

}
void CN_SetSysHotKey(bool Flag)
{
        int temp;
        if( Flag)
        {
                SystemParametersInfo(SPI_SCREENSAVERRUNNING,0,&temp,0);
        }
        else
        {
                SystemParametersInfo(SPI_SCREENSAVERRUNNING,1,&temp,0);
        }

}
void CN_DisabledRegeidt(bool Flag)
{
        TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry

                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\system";

                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                        {
                                Reg->WriteInteger("DisableRegistryTools",1);
                        }
                        else
                        {
                                Reg->DeleteValue("DisableRegistryTools");
                        }
                }
                Reg->CloseKey();
        }
        __finally
        {
                delete Reg;
        }
}
void CN_DisabledMouse(bool Flag)
{
        RECT rt;
        rt.left   = 0;
        rt.top    = 0;
        rt.right  = 0;
        rt.bottom = 0;

        if( Flag)
        {
//                MapWindowPoints(NULL, 0, rt, 2); // 座标换算
                ClipCursor(&rt);
        }
        else
        {
                ClipCursor(NULL);
        }
}
void CN_ShowTray_Shell(bool Flag)
{
        HANDLE hShell;
        hShell = FindWindow("Shell_TrayWnd", NULL);
        if(!Flag)
        {
                ShowWindow(hShell, SW_HIDE);
        }
        else
        {
                ShowWindow(hShell, SW_SHOW);
        }
}
void CN_SetPowerState(bool Flag)
{
        SetSystemPowerState(true,Flag);
}
void CN_SendHotKeyToTaskBar(DWORD Msg)
{
        HANDLE hTaskBar;
        hTaskBar  = FindWindow("shell_traywnd",NULL);
        SendMessage(hTaskBar,WM_HOTKEY,Msg,0);
}
void CN_DisableMouseRight(bool Flag)
{
        //禁止鼠标右键
        TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteBinaryData("NoViewContextMenu","\0x1\0\0\0",4);
                        else
                                Reg->DeleteValue("NoViewContextMenu");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoLogOff(bool Flag)
{
        //禁止“注销”菜单
        TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteBinaryData("NoLogOff","\0x1\0\0\0",4);
                        else
                                Reg->DeleteValue("NoLogOff");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoDeletePrinter(bool Flag)
{
        //禁止“删除打印机"
        TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoDeletePrinter",1);
                        else
                                Reg->DeleteValue("NoDeletePrinter");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoNetSetup(bool Flag)
{
        //禁用“网络”控制面板
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\System";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoNetSetup",1);
                        else
                                Reg->DeleteValue("NoNetSetup");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoProfilePage(bool Flag)
{
       //禁用“用户”控制面板
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\System";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoProfilePage",1);
                        else
                                Reg->DeleteValue("NoProfilePage");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoSecCPL(bool Flag)
{
       //禁用“密码”控制面板
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "software\\microsoft\\windows\\currentversion\\policies\\System";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoSecCPL",1);
                        else
                                Reg->DeleteValue("NoSecCPL");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoChangeStartMenu(bool Flag)
{
        //禁止修改”开始“菜单
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "Software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoChangeStartMenu",1);
                        else
                                Reg->DeleteValue("NoChangeStartMenu");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoSetFolders(bool Flag)
{
        //禁止修改“控制面板”
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "Software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteBinaryData("NoSetFolders","\0x1\0\0\0",4);
                        else
                                Reg->DeleteValue("NoSetFolders");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_NoDispCPL(bool Flag)
{
        //禁止修改显示属性
       TCNString NameOfKey;

        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "Software\\microsoft\\windows\\currentversion\\policies\\System";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                                Reg->WriteInteger("NoDispCPL",1);
                        else
                                Reg->DeleteValue("NoDispCPL");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
void CN_HideDrivers(int DriverNum)
{
        //隐藏驱动器-1 All,0-A, 1-B,2-C,...
        TCNString NameOfKey;

        bool Flag = TRUE;

        DWORD Value = 0;

        switch( DriverNum)
        {
                case -2: Flag = FALSE; break;
                case -1: Value = 0xffffffff; break;
                case 0:  Value = 1; break;
                case 1:  Value = 2; break;
                case 2:  Value = 4; break;
                case 3:  Value = 8; break;
                case 4:  Value = 10; break;
                case 5:  Value = 12; break;
        }
        TCNRegistry *Reg = new TCNRegistry;
        try
        {
                Reg->SetRootKey(HKEY_CURRENT_USER); // Section to look for within the registry
                NameOfKey = "Software\\microsoft\\windows\\currentversion\\policies\\Explorer";
                if (Reg->OpenKey(NameOfKey, true))
                {
                        if( Flag)
                        {
                                Reg->WriteInteger("NoDrives",Value);
                        }
                        else
                                Reg->DeleteValue("NoDrives");
                }
                Reg->CloseKey();
        }
        __finally{
                delete Reg;
        }
}
BOOL CALLBACK KillScreenSaverFunc(HWND hwnd, LPARAM lParam)
{
	PostMessage(hwnd, WM_CLOSE, 0, 0);
	return TRUE;
}

void CN_KillScreenSaver()
{
	OSVERSIONINFO osversioninfo;
	osversioninfo.dwOSVersionInfoSize = sizeof(osversioninfo);

	// Get the current OS version
	if (!GetVersionEx(&osversioninfo))
		return;

	// How to kill the screen saver depends on the OS
	switch (osversioninfo.dwPlatformId)
	{
	case VER_PLATFORM_WIN32_WINDOWS:
		{
			// Windows 95

			// Fidn the ScreenSaverClass window
			HWND hsswnd = FindWindow ("WindowsScreenSaverClass", NULL);
			if (hsswnd != NULL)
				PostMessage(hsswnd, WM_CLOSE, 0, 0);
			break;
		}
	case VER_PLATFORM_WIN32_NT:
		{
			// Windows NT
			// Find the screensaver desktop
			HDESK hDesk = OpenDesktop(
				"Screen-saver",
				0,
				FALSE,
				DESKTOP_READOBJECTS | DESKTOP_WRITEOBJECTS
				);
			if (hDesk != NULL)
			{
				// Close all windows on the screen saver desktop
				EnumDesktopWindows(hDesk, (WNDENUMPROC) &KillScreenSaverFunc, 0);
				CloseDesktop(hDesk);
				// Pause long enough for the screen-saver to close
				Sleep(2000);
				// Reset the screen saver so it can run again
				SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, TRUE, 0, SPIF_SENDWININICHANGE);
			}
			break;
		}
	}
}
static void CN_KillWallpaper()
{
	SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_SENDCHANGE);
}
static void CN_RestoreWallpaper()
{
	SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_SENDCHANGE);
}
TCNString CN_GetAwardCmosPassword(void)
{
        TCmos *Cmos;
        TCNString sTmp = "";

        Cmos = new TAward;

        sTmp = sTmp + Cmos->Password(0) + ";"
                    + Cmos->Password(1) + ";"
                    + Cmos->Password(2) + ";"
                    + Cmos->Password(3);
        delete Cmos;

        return sTmp;
}
bool  CN_SetLocalComputerName(TCNString ComputerName)
{
        return SetComputerName(ComputerName.c_str());
}
TCNString  CN_GetSysEventString(void)
{
        char *strings = GetEnvironmentStrings () ;

        TCNString sTmp = "";

        for (int index = 0 ; strings [index] != 0 ; index += strlen (&strings [index]) + 1)
        {
                sTmp = sTmp +  &strings [index] + ">*<";
        }
        FreeEnvironmentStrings (strings) ;

        return sTmp;
}
bool  CN_SetSysEvenString(TCNString Name,TCNString Value)
{
        return SetEnvironmentVariable (Name.c_str (), Value.c_str ()) ;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -