Несколько потенциальных клиентов:
Призыв к системе dlls < /h4>
рассматриваемые DLLS включает (но не ограничен): < /p>
Код: Выделить всё
C:\WINDOWS\System32\clbcatq.dll
C:\WINDOWS\SYSTEM32\CoreUIComponents.dll
C:\WINDOWS\system32\schannel.DLL
C:\WINDOWS\system32\wbem\fastprox.dll
C:\WINDOWS\SYSTEM32\ncrypt.dll
C:\WINDOWS\SYSTEM32\DEVOBJ.dll
Очевидно, что это не происходит на машине коллеги. с двойными и выпущенными двоичными файлами, на последнем сообществе Visual Studio 2022, с отладчиком и без отладчика, работая как администратор и обычный пользователь. < /p>
Используемые параметры < /h4>
Как я называю WinVerifyTrust
Я проверил исправление на функции WinVerifyTrust, требуется много времени, но это ничего не изменило.
Код: Выделить всё
#include
#include
#include
#include
#include
#include
#pragma comment (lib, "wintrust")
#pragma comment (lib, "Crypt32")
#define ENCODING (X509_ASN_ENCODING | PKCS_7_ASN_ENCODING)
BOOL Authenticode::VerifyEmbeddedSignature(LPCWSTR filePath)
{
WINTRUST_FILE_INFO fileData;
WINTRUST_DATA winTrustData;
GUID actionGUID = WINTRUST_ACTION_GENERIC_VERIFY_V2;
memset(&fileData, 0, sizeof(fileData));
fileData.cbStruct = sizeof(WINTRUST_FILE_INFO);
fileData.pcwszFilePath = filePath;
memset(&winTrustData, 0, sizeof(winTrustData));
winTrustData.cbStruct = sizeof(WINTRUST_DATA);
winTrustData.dwUIChoice = WTD_UI_NONE;
winTrustData.fdwRevocationChecks = WTD_REVOKE_NONE;
winTrustData.dwUnionChoice = WTD_CHOICE_FILE;
winTrustData.pFile = &fileData;
winTrustData.dwStateAction = WTD_STATEACTION_VERIFY;
LONG status = 0;
status = WinVerifyTrust(NULL, &actionGUID, &winTrustData);
// crashes/hang here
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... rtain-dlls