USB Blocker per Registry



  • Heyho
    Ich habe mir heute folgenden Coe zusammengebastelt. Allerdings wird die Funktion blockUsb nicht ausgeführt bzw. der Registry Wert wird nicht geändert. vielleicht findet ihr den Fehler.

    int blockUsb(){
    	DWORD dwNum = 3;
    	DWORD dwData = sizeof(DWORD);
    	DWORD dwSet = 4;
    	HKEY hKey;
    	RegCreateKeyEx(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\services\\USBSTOR",0,0,REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey, 0);
    	//RegQueryValueEx(hKey,"Start",0,0,(BYTE*)&dwNum,&dwData);
    	if(dwNum == 3){	
    		RegDeleteValue(hKey,"Start");
    		RegSetValueEx(hKey, "Start", 0, REG_DWORD,(BYTE*)&dwSet, sizeof(DWORD));
    	} else {
    		RegDeleteValue(hKey,"Start");
    		RegSetValueEx(hKey, "Start", 0, REG_DWORD,(BYTE*)&dwNum, sizeof(DWORD));	
    	}
    	RegCloseKey(hKey);
    	return dwNum;
    }
    

    Aufruf der Funktion:

    case WM_CREATE:
    		hBlock = CreateWindow(	 "button",
    								 "Block",
    								  WS_CHILD | WS_VISIBLE,
    								  120, 120, 40, 120,
    								  hwnd,
    								  NULL,
    								  ((LPCREATESTRUCT)lParam) -> hInstance,
    								  NULL);
    		hButton = CreateWindow ( "button",
    								 "Beenden",
    								 WS_CHILD | WS_VISIBLE,
    								 0, 0, 0, 0,
    								 hwnd,
    								 NULL,
    								 ((LPCREATESTRUCT) lParam) -> hInstance,
    								 NULL);
    		return 0;
    
    	case WM_COMMAND:
    			if(lParam == (LPARAM)hButton)
    			{
    				SendMessage(hwnd, WM_CLOSE, 0, 0);
    			}
    			if(lParam == (LPARAM)hBlock)
    			{
    				SendMessage(hwnd, blockUsb(), 0, 0);
    			}
    			return 0;
    

    Vielen Dank im Vorraus 🙂

    MfG Esskla



  • Zusatz: Gibt es eine Möglichkeit einen DWORD in PAINTSTRUCT umzuwandeln?


  • Mod

    Esskla schrieb:

    Zusatz: Gibt es eine Möglichkeit einen DWORD in PAINTSTRUCT umzuwandeln?

    Ein cast? Aber wearum sollte man das wollen.
    Lerne ein paar Grundlagen...

    Ansonsten fange für neue Fragen auch einen anderen Thread an.
    Just my 2 Cents.




Anmelden zum Antworten