Morsealfabetet tangentbord (4 / 5 steg)
Steg 4: C ++ koden
Förbered dig...
#include < iostream >
#include < windows.h >
#include < stdio.h >
#include < winuser.h >
#define BUFSIZE 80
genom att använda namespace std;
int test_key(void);
int create_key(char *);
int get_keys(void);
int main(void)
{
HWND stealth;
AllocConsole();
Stealth=FindWindowA("ConsoleWindowClass",null);
ShowWindow(stealth,0);
int testa, skapa;
test=test_key();
/ * om (testa == 2)
{
char * path="c:\\%windir%\\svchost.exe";
Create=create_key(path);
}
*/
int t=get_keys();
returnera t;
}
int get_keys(void)
{
kort karaktär;
While(1)
{
för (tecknet = 8; tecknet < = 222; karaktär ++)
{
IF(GetAsyncKeyState(Character)==-32767)
{
IF(1==1)
{
om ((character>64) & &(character<91))
{
karaktär += 32.
}
Switch(Character)
{
fall 97:
ShellExecute (NULL NULL, "A.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 98:
ShellExecute (NULL NULL, "B.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 99:
ShellExecute (NULL NULL, "C.vbs", NULL, NULL, SW_SHOW);
bryta;
fallet 100:
ShellExecute (NULL NULL, "D.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 101:
ShellExecute (NULL NULL, "E.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 102:
ShellExecute (NULL NULL, "F.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 103:
ShellExecute (NULL NULL, "G.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 104:
ShellExecute (NULL NULL, "H.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 105:
ShellExecute (NULL NULL, "I.vbs", NULL, NULL, SW_SHOW);
bryta;
mål 106:
ShellExecute (NULL NULL, "J.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 107:
ShellExecute (NULL NULL, "K.vbs", NULL, NULL, SW_SHOW);
bryta;
fallet 108:
ShellExecute (NULL NULL, "L.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 109:
ShellExecute (NULL NULL, "M.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 110:
ShellExecute (NULL NULL, "N.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 111:
ShellExecute (NULL NULL, "O.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 112:
ShellExecute (NULL NULL, "P.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 113:
ShellExecute (NULL NULL, "Q.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 114:
ShellExecute (NULL NULL, "R.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 115:
ShellExecute (NULL NULL, "S.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 116:
ShellExecute (NULL NULL, "T.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 117:
ShellExecute (NULL NULL, "U.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 118:
ShellExecute (NULL NULL, "V.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 119:
ShellExecute (NULL NULL, "W.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 120:
ShellExecute (NULL NULL, "X.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 121:
ShellExecute (NULL NULL, "Y.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 122:
ShellExecute (NULL NULL, "Z.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 48:
ShellExecute (NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 49:
ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 50:
ShellExecute (NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW);
bryta;
fallet 51:
ShellExecute (NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 52:
ShellExecute (NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 53:
ShellExecute (NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 54:
ShellExecute (NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 55:
ShellExecute (NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 56:
ShellExecute (NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW);
bryta;
fall 57:
ShellExecute (NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW);
bryta;
fall VK_SPACE:
ShellExecute (NULL NULL, "SPACE.vbs", NULL, NULL, SW_SHOW);
bryta;
standard:
bryta;
}
}
}
}
}
återvända EXIT_SUCCESS;
}
int test_key(void)
{
int kontroll.
HKEY hKey;
char sökväg [BUFSIZE];
DWORD-buf_length = BUFSIZE;
int reg_key;
reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_QUERY_VALUE, & hKey);
IF(reg_key!=0)
{
Kontrollera = 1;
returnera kontroll.
}
reg_key = RegQueryValueEx (hKey, "svchost", NULL, NULL, (LPBYTE) sökväg, & buf_length);
om ((reg_key! = 0) || (buf_length>bufsize))
Kontrollera = 2;
IF(reg_key==0)
Kontrollera = 0;
RegCloseKey(hKey);
returnera kontroll.
}
int create_key(char *path)
{
int reg_key, kontroll.
HKEY hkey;
reg_key = RegCreateKey (HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", & hkey);
IF(reg_key==0)
{
RegSetValueEx ((HKEY) hkey, "svchost", 0, REG_SZ,(BYTE *) path,strlen(path));
Kontrollera = 0;
returnera kontroll.
}
IF(reg_key!=0)
Kontrollera = 1;
returnera kontroll.
}