Я пишу DLL и хочу после компиляции добавить несколько строк в качестве встроенного ресурса.
Для этого я использую скрипт Python, который выглядит аналогичнок следующему:
hRes = win32api.BeginUpdateResource(myFile, 0)
win32api.UpdateResource(hRes, win32con.RT_STRING, 409, buf, 1033)
win32api.EndUpdateResource(hRes, 0)
И это, кажется, работает, я вижу строки в PE с моим hex-редактором.
Проблема возникает, когда моя Dll пытается использовать LoadString()
чтобы вытащить эту строку обратно.
Вызов выглядит примерно так:
LoadString(myDll, 409, someBuf, lenOfBuf);
И моя программа, похоже, перестает ссылаться на неверный указатель в вызове LoadString()
.
Моя проблема в том, как я добавляю строку или вытаскиваю ее?И может ли кто-нибудь указать мне пример кода, который выполняет оба шага?
Редактировать : Я бы предпочел использовать для этого Win32 API.