|
|
|
@ -33,8 +33,10 @@
|
|
|
|
|
using nt_load_driver_t = NTSTATUS(__fastcall*)(PUNICODE_STRING);
|
|
|
|
|
using nt_unload_driver_t = NTSTATUS(__fastcall*)(PUNICODE_STRING);
|
|
|
|
|
|
|
|
|
|
namespace util
|
|
|
|
|
namespace driver
|
|
|
|
|
{
|
|
|
|
|
namespace util
|
|
|
|
|
{
|
|
|
|
|
inline bool delete_service_entry(const std::string& service_name)
|
|
|
|
|
{
|
|
|
|
|
HKEY reg_handle;
|
|
|
|
@ -179,10 +181,8 @@ namespace util
|
|
|
|
|
RegCloseKey(reg_handle);
|
|
|
|
|
return std::string(image_path);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
namespace driver
|
|
|
|
|
{
|
|
|
|
|
inline bool load(const std::string& drv_path, const std::string& service_name)
|
|
|
|
|
{
|
|
|
|
|
if (!util::enable_privilege(L"SeLoadDriverPrivilege"))
|
|
|
|
|