Код внедряет стороннее приложение Qt и выполняет некоторые методы для получения информации о приложении Qt - PullRequest
0 голосов
/ 18 апреля 2019

Инжекция кода может получить приложение Qt, которое я разработал правильно, но сторонние приложения не могут. Что мне делать?

BOOL APIENTRY DllMain(HMODULE hModule,
    DWORD  ul_reason_for_call,
    LPVOID lpReserved
)
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        DoSomeThing();
        break;
    case DLL_THREAD_ATTACH:
        DoSomeThing();
        break;
    default:
        break;
    }
    return TRUE;
}


void DoSomeThing() {
LPCTSTR step = L"GetQCoreApplication";
LPCSTR CustomApplications = "CustomApp";
LPCSTR ThirdPartyApplications = "ThirdPartyApp";
//CustomApplications = ThirdPartyApplications;
HWND hwnd = FindWindowA(NULL, CustomApplications);
DWORD procId;
GetWindowThreadProcessId(hwnd, &procId);
HANDLE handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, procId);

/*Custom programs are available. But third-party applications are not available.*/
QCoreApplication* qCoreApplication = QCoreApplication::instance();
if (qCoreApplication != NULL) {
    MessageBox(NULL, L"Get QCoreApplication", TEXT("Inject Code"), MB_OK);
}
else
{
    MessageBox(NULL, L"Not Acquired QCoreApplication", TEXT("Inject Code"), MB_OK);
}

ofstream mcfile;  
mcfile.open("D://Inject.txt");  
mcfile << "This is my message.";  
mcfile.close(); 

/*Custom programs are available. But third-party applications are not available.*/
HWND hwnd11 = FindWindowA(NULL, CustomApplications);
QWidget* q = QWidget::find((WId)hwnd);

if (q != NULL) {
     //
}
else {
    // 
}

}

Пользовательские программы доступны. Сторонние приложения недоступны.

1 Ответ

0 голосов
/ 14 мая 2019

Когда я посмотрел на динамическую библиотеку qt, я обнаружил Qtxxxd.dll и Qtxxx.dll.Просмотрите документацию qt и найдите, что приложение qt использует Qtxxxd.dll в режиме отладки и Qtxxx.dll в режиме выпуска.Убедитесь, что ваша программа впрыска соответствует введенной программе, используя тот же шаблон.

...