diff --git a/Controllers/DuckyKeyboardController/DuckyKeyboardController.cpp b/Controllers/DuckyKeyboardController/DuckyKeyboardController.cpp index 74060b2b..5ef8d87b 100644 --- a/Controllers/DuckyKeyboardController/DuckyKeyboardController.cpp +++ b/Controllers/DuckyKeyboardController/DuckyKeyboardController.cpp @@ -13,10 +13,11 @@ #include "DuckyKeyboardController.h" #include "StringUtils.h" -DuckyKeyboardController::DuckyKeyboardController(hid_device* dev_handle, const char* path, const unsigned short pid) +DuckyKeyboardController::DuckyKeyboardController(hid_device* dev_handle, const char* path, const unsigned short pid, std::string dev_name) { dev = dev_handle; location = path; + name = dev_name; usb_pid = pid; SendInitialize(); @@ -27,11 +28,16 @@ DuckyKeyboardController::~DuckyKeyboardController() hid_close(dev); } -std::string DuckyKeyboardController::GetDeviceLocation() +std::string DuckyKeyboardController::GetLocationString() { return("HID: " + location); } +std::string DuckyKeyboardController::GetNameString() +{ + return(name); +} + std::string DuckyKeyboardController::GetSerialString() { wchar_t serial_string[128]; diff --git a/Controllers/DuckyKeyboardController/DuckyKeyboardController.h b/Controllers/DuckyKeyboardController/DuckyKeyboardController.h index e059939c..f6e34e22 100644 --- a/Controllers/DuckyKeyboardController/DuckyKeyboardController.h +++ b/Controllers/DuckyKeyboardController/DuckyKeyboardController.h @@ -29,10 +29,11 @@ class DuckyKeyboardController { public: - DuckyKeyboardController(hid_device* dev_handle, const char* path, const unsigned short pid); + DuckyKeyboardController(hid_device* dev_handle, const char* path, const unsigned short pid, std::string dev_name); ~DuckyKeyboardController(); - std::string GetDeviceLocation(); + std::string GetLocationString(); + std::string GetNameString(); std::string GetSerialString(); unsigned short GetUSBPID(); @@ -45,6 +46,7 @@ public: private: hid_device* dev; std::string location; + std::string name; unsigned short usb_pid; void SendInitialize(); diff --git a/Controllers/DuckyKeyboardController/DuckyKeyboardControllerDetect.cpp b/Controllers/DuckyKeyboardController/DuckyKeyboardControllerDetect.cpp index 6164fc46..bd82478e 100644 --- a/Controllers/DuckyKeyboardController/DuckyKeyboardControllerDetect.cpp +++ b/Controllers/DuckyKeyboardController/DuckyKeyboardControllerDetect.cpp @@ -28,9 +28,9 @@ void DetectDuckyKeyboardControllers(hid_device_info* info, const std::string& na if(dev) { - DuckyKeyboardController* controller = new DuckyKeyboardController(dev, info->path, info->product_id); + DuckyKeyboardController* controller = new DuckyKeyboardController(dev, info->path, info->product_id, name); RGBController_DuckyKeyboard* rgb_controller = new RGBController_DuckyKeyboard(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } /* DetectDuckyKeyboardControllers() */ diff --git a/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp b/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp index ecb11fb1..624f6511 100644 --- a/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp +++ b/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp @@ -203,11 +203,11 @@ RGBController_DuckyKeyboard::RGBController_DuckyKeyboard(DuckyKeyboardController { controller = controller_ptr; - name = "Ducky Keyboard Device"; + name = controller->GetNameString(); vendor = "Ducky"; type = DEVICE_TYPE_KEYBOARD; description = "Ducky Keyboard Device"; - location = controller->GetDeviceLocation(); + location = controller->GetLocationString(); serial = controller->GetSerialString(); mode Direct;