fix spacing, update reg fix, add flags to readme
This commit is contained in:
15
README.md
15
README.md
@@ -1,7 +1,7 @@
|
||||
# wufuc
|
||||
[](https://admin.gear.mycelium.com/gateways/3554/orders/new) [][AppVeyor] [](https://t.me/joinchat/HEo6LUvV_83O92WzbYXLeQ) [][Latest]
|
||||
|
||||
This document is also available in [简体中文], [繁体中文], [русский], [Español] and [more...](https://github.com/zeffy/wufuc/wiki)
|
||||
[:de:] [:es:] [:fr:] [:it:] [:hungary:] [:brazil:] [:ru:] [:cn:] [:taiwan:]
|
||||
|
||||
Disables the "Unsupported Hardware" message in Windows Update, and allows you to continue installing updates on Windows 7 and 8.1 systems with Intel Kaby Lake, AMD Ryzen, or other unsupported processors.
|
||||
|
||||
@@ -108,7 +108,12 @@ Advanced Installer's intuitive and friendly user interface allowed me to quickly
|
||||
|
||||
[Latest]: https://github.com/zeffy/wufuc/releases/latest
|
||||
[AppVeyor]: https://ci.appveyor.com/project/zeffy/wufuc
|
||||
[简体中文]: https://github.com/zeffy/wufuc/wiki/README-(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
|
||||
[繁体中文]: https://github.com/zeffy/wufuc/wiki/README-(%E7%B9%81%E9%AB%94%E4%B8%AD%E6%96%87)
|
||||
[русский]: https://github.com/zeffy/wufuc/wiki/README-(%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)
|
||||
[Español]: https://github.com/zeffy/wufuc/wiki/README-(Espa%C3%B1ol)
|
||||
[:de:]: https://github.com/zeffy/wufuc/wiki/README-(Deutsch)
|
||||
[:es:]: https://github.com/zeffy/wufuc/wiki/README-(Espa%C3%B1ol)
|
||||
[:fr:]: https://github.com/zeffy/wufuc/wiki/README-(Fran%C3%A7ais)
|
||||
[:it:]: https://github.com/zeffy/wufuc/wiki/README-(Italiano)
|
||||
[:hungary:]: https://github.com/zeffy/wufuc/wiki/README-(Magyar)
|
||||
[:brazil:]: https://github.com/zeffy/wufuc/wiki/README-(Portugu%C3%AAs%20Brasileiro)
|
||||
[:ru:]: https://github.com/zeffy/wufuc/wiki/README-(%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)
|
||||
[:cn:]: https://github.com/zeffy/wufuc/wiki/README-(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
|
||||
[:taiwan:]: https://github.com/zeffy/wufuc/wiki/README-(%E7%B9%81%E9%AB%94%E4%B8%AD%E6%96%87)
|
||||
|
@@ -254,7 +254,9 @@ bool wufuc_InjectLibrary(DWORD dwProcessId, ContextHandles *pContext)
|
||||
HANDLE hSrcProcess;
|
||||
ContextHandles param = { 0 };
|
||||
|
||||
if ( swprintf_s(MutexName, _countof(MutexName), L"Global\\%08x-7132-44a8-be15-56698979d2f3", dwProcessId) == -1 ) {
|
||||
if ( swprintf_s(MutexName, _countof(MutexName),
|
||||
L"Global\\%08x-7132-44a8-be15-56698979d2f3", dwProcessId) == -1 ) {
|
||||
|
||||
trace(L"Failed to print mutex name to string! (%lu)", dwProcessId);
|
||||
return result;
|
||||
}
|
||||
|
@@ -15,7 +15,8 @@ bool InitializeMutex(bool InitialOwner, LPCWSTR pMutexName, HANDLE *phMutex)
|
||||
*phMutex = hMutex;
|
||||
return true;
|
||||
} else {
|
||||
trace(L"Failed to create mutex: %ls (GetLastError=%ld)", pMutexName, GetLastError());
|
||||
trace(L"Failed to create mutex: %ls (GetLastError=%ld)",
|
||||
pMutexName, GetLastError());
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -109,7 +110,10 @@ LPBYTE RegQueryValueExAlloc(
|
||||
return result;
|
||||
}
|
||||
|
||||
PVOID NtQueryKeyAlloc(HANDLE KeyHandle, KEY_INFORMATION_CLASS KeyInformationClass, PULONG pResultLength)
|
||||
PVOID NtQueryKeyAlloc(
|
||||
HANDLE KeyHandle,
|
||||
KEY_INFORMATION_CLASS KeyInformationClass,
|
||||
PULONG pResultLength)
|
||||
{
|
||||
NTSTATUS Status;
|
||||
ULONG ResultLength;
|
||||
|
@@ -20,5 +20,8 @@ LPBYTE RegQueryValueExAlloc(
|
||||
LPCWSTR pValueName,
|
||||
LPDWORD pType,
|
||||
LPDWORD pcbData);
|
||||
PVOID NtQueryKeyAlloc(HANDLE KeyHandle, KEY_INFORMATION_CLASS KeyInformationClass, PULONG pResultLength);
|
||||
PVOID NtQueryKeyAlloc(
|
||||
HANDLE KeyHandle,
|
||||
KEY_INFORMATION_CLASS KeyInformationClass,
|
||||
PULONG pResultLength);
|
||||
LPWSTR ExpandEnvironmentStringsAlloc(LPCWSTR src, LPDWORD pcchLength);
|
||||
|
@@ -66,7 +66,10 @@ bool QueryServiceStatusProcessInfoByName(
|
||||
return result;
|
||||
}
|
||||
|
||||
bool QueryServiceGroupName(const LPQUERY_SERVICE_CONFIGW pServiceConfig, LPWSTR *pGroupName, HLOCAL *hMem)
|
||||
bool QueryServiceGroupName(
|
||||
const LPQUERY_SERVICE_CONFIGW pServiceConfig,
|
||||
LPWSTR *pGroupName,
|
||||
HLOCAL *hMem)
|
||||
{
|
||||
bool result = false;
|
||||
int NumArgs;
|
||||
|
@@ -12,9 +12,12 @@ bool QueryServiceStatusProcessInfoByName(
|
||||
SC_HANDLE hSCM,
|
||||
const wchar_t *pServiceName,
|
||||
LPSERVICE_STATUS_PROCESS pServiceStatus);
|
||||
bool QueryServiceGroupName(const LPQUERY_SERVICE_CONFIGW pServiceConfig, LPWSTR *pGroupName, HLOCAL *hMem);
|
||||
bool QueryServiceGroupName(
|
||||
const LPQUERY_SERVICE_CONFIGW pServiceConfig,
|
||||
LPWSTR *pGroupName,
|
||||
HLOCAL *hMem);
|
||||
DWORD QueryServiceProcessId(SC_HANDLE hSCM, SC_HANDLE hService);
|
||||
DWORD QueryServiceProcessIdByName(SC_HANDLE hSCM, const wchar_t *pServiceName);
|
||||
DWORD HeuristicServiceGroupProcessId(SC_HANDLE hSCM, const wchar_t *pGroupName);
|
||||
DWORD HeuristicServiceProcessId(SC_HANDLE hSCM, SC_HANDLE hService);
|
||||
DWORD HeuristicServiceProcessIdByName(SC_HANDLE hSCM, const wchar_t *pServiceName);
|
||||
DWORD HeuristicServiceProcessIdByName(SC_HANDLE hSCM, const wchar_t *pServiceName);
|
||||
|
Binary file not shown.
Reference in New Issue
Block a user