Python в DLL (c ++) Визуальная студия

У меня есть Visual Studio, я пытаюсь выполнить Python в игре с помощью DLL инъекции.

это мой код:

#include "windows.h"#define MS_NO_COREDLL
#include <Python.h>
#include <detours.h>

#include "stdafx.h"#include <string>
#include <sstream>
#include <iostream>
#include <fcntl.h>
#pragma comment(lib, "detours.lib")
using namespace std;

void pickupitem(){
PyObject* args = PyTuple_New(0);
PyObject* ret = PyObject_Call(PyObject_GetAttrString(PyImport_ImportModule("player"), "PickCloseItem"), args, NULL);
double result = PyFloat_AsDouble(ret);
Py_DECREF(ret);
Py_XDECREF(args);
//return result;
}
BOOL APIENTRY DllMain(HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
pickupitem();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}

Он хорошо компилируется, но мой «Winject» (программа для внедрения DLL) получил ошибку, которая ничего не говорит о проблеме.

Когда я редактирую свой код и меняю его на:

case DLL_PROCESS_ATTACH:
MessageBoxA(NULL, (LPCSTR) "WORK!", (LPCSTR) "YES !", NULL);
pickupitem();
break;

Я видел 2x РАБОТА! но winject по-прежнему возвращает ошибку.

Я думаю, что это вина компилятора Visual Studio, не могли бы вы сказать мне, что не так?

Я установил python2.7.6 добавить папку / libs для компоновщика и / include для компилятора.

Можно отладить эту dll, и знать, где проблема?

С уважением.

1

Решение

как насчет добавления вызова Py_Initialize () и Py_Finalize (), см.
http://docs.python.org/2/c-api/init.html

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector