Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 25.12.02 15:58
Оценка:
Привет!

Проблема такая: мне нужно, грубо говоря, пропатчить екзешник, добавив в него ресурс.
Ресурс мой собсвенный, вообщем делаю так:

#define REG_UTIL_RES_NAME _T("SNSFile")
#define REG_UTIL_RES_TYPE _T("SNSFileResType")

/////////////////////

     pBuffer = new BYTE[dwFileSize];

//Здесь заполняется буфер pBuffer
//...


     HANDLE hUpdateRes = ::BeginUpdateResource("sns.exe", FALSE);
     if(hUpdateRes==NULL)
     {
          return FALSE;
     }
     BOOL res = ::UpdateResource(
          hUpdateRes, 
          REG_UTIL_RES_TYPE, 
          REG_UTIL_RES_NAME, 
          MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), 
          pBuffer, 
          dwFileSize);
     if(!res)
     {
          return FALSE;
     }

     ::EndUpdateResource(hUpdateRes, FALSE);



В самом екзешнике — sns.exe делаю так:

     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_TYPE, REG_UTIL_RES_NAME);



Результат: ресурс не найден (ошибка 1813)

Почему, подскажите плиз, че не так.
Спасибо
Re: Не удается апдейтить ресурсы
От: kmn Украина  
Дата: 25.12.02 16:05
Оценка:
Здравствуйте, Amor, Вы писали:

Лишнее цитирование удалено. ДХ

A>В самом екзешнике — sns.exe делаю так:

     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_TYPE, REG_UTIL_RES_NAME);



Попробуйте так:
     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_NAME, REG_UTIL_RES_TYPE);
Re: Не удается апдейтить ресурсы
От: Хитрик Денис Россия RSDN
Дата: 25.12.02 19:10
Оценка:
Вопрос стоит публиковать в один форум!

Цитирую ответившего вам в другом сообщении SmirnoVV.

А может просто ресхаком?
Я помню, им вставлял новые пункты меню в готоывй ехешник.

http://www.nptus.ru/~sol/index.php?left=Programms&right=ResHack

Правила нашего с вами форума.
Как правильно задавать вопросы. © 2001 by Eric S. Raymond; перевод: © 2002 Валерий Кравчук.
Re: Не удается апдейтить ресурсы
От: LaFlour Австралия blog: http://spaces.live.com/laflour
Дата: 26.12.02 06:58
Оценка:
Здравствуйте, Amor, Вы писали:

A>Привет!


A>Проблема такая: мне нужно, грубо говоря, пропатчить екзешник, добавив в него ресурс.

A>Ресурс мой собсвенный, вообщем делаю так:

А ты случаем не свой запушенный EXE патчишь?
А то такого делать нельзя
:: Into my SONY MDR-R10 sound "DJ Groove — Ноктюрн" ::
Re[2]: Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 26.12.02 07:16
Оценка:
Здравствуйте, Хитрик Денис, Вы писали:

ХД>Вопрос стоит публиковать в один форум!


ХД>Цитирую ответившего вам в другом сообщении SmirnoVV.


ХД>

ХД>А может просто ресхаком?
ХД>Я помню, им вставлял новые пункты меню в готоывй ехешник.

ХД>http://www.nptus.ru/~sol/index.php?left=Programms&right=ResHack


Нет, это не разовая задача. Мне нужно сделать прогу, которая по некоторым данным пользователя генерит некие данные. И эти данные нужно прошить в другом екзешнике.
Re[2]: Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 26.12.02 07:17
Оценка:
Здравствуйте, LaFlour, Вы писали:

LF>Здравствуйте, Amor, Вы писали:


A>>Привет!


A>>Проблема такая: мне нужно, грубо говоря, пропатчить екзешник, добавив в него ресурс.

A>>Ресурс мой собсвенный, вообщем делаю так:

LF>А ты случаем не свой запушенный EXE патчишь?

LF>А то такого делать нельзя

Другой ессссссссствно
Re: Не удается апдейтить ресурсы
От: Hacker_Delphi Россия  
Дата: 26.12.02 08:50
Оценка:
Здравствуйте, Amor, Вы писали:

А ОС какая???
01 — mnogo divnogo
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[2]: Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 26.12.02 08:56
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

HD>Здравствуйте, Amor, Вы писали:


HD>А ОС какая???


Windows 2000
Re[2]: Не удается апдейтить ресурсы
От: kmn Украина  
Дата: 26.12.02 11:40
Оценка:
При вызове функции FindResource Вы параметры местами перепутали:

вместа:
     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_TYPE, REG_UTIL_RES_NAME);


Попробуйте так:
     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_NAME, REG_UTIL_RES_TYPE);



HRSRC FindResource(
HMODULE hModule, // module handle
LPCTSTR lpName, // resource name
LPCTSTR lpType // resource type
);

(C) MSDN
Re[3]: Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 26.12.02 12:32
Оценка:
Здравствуйте, kmn, Вы писали:


kmn>При вызове функции FindResource Вы параметры местами перепутали:


kmn>вместа:

kmn>
kmn>     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_TYPE, REG_UTIL_RES_NAME);
kmn>


kmn>Попробуйте так:

kmn>
kmn>     HRSRC hResource = ::FindResource(hInst, REG_UTIL_RES_NAME, REG_UTIL_RES_TYPE);
kmn>


kmn>

kmn>

kmn>HRSRC FindResource(
kmn> HMODULE hModule, // module handle
kmn> LPCTSTR lpName, // resource name
kmn> LPCTSTR lpType // resource type
kmn>);

(C) MSDN



Ну да, так я вроде исправил...
Так и делаю — не получается.
Re[4]: Не удается апдейтить ресурсы
От: LaFlour Австралия blog: http://spaces.live.com/laflour
Дата: 27.12.02 08:35
Оценка:
Здравствуйте, Amor, Вы писали:

A>Здравствуйте, kmn, Вы писали:


A>

kmn>>При вызове функции FindResource Вы параметры местами перепутали:
A>Ну да, так я вроде исправил...
A>Так и делаю — не получается.

трудно сказать почему не работает, все вроде правильно
попробуй из MSDN взять пример и его запустить, а потом потихоньку меняй на свой.
:: Into my SONY MDR-R10 sound "silent" ::
Re[5]: Не удается апдейтить ресурсы
От: Amor Россия  
Дата: 27.12.02 08:53
Оценка:
Здравствуйте, LaFlour, Вы писали:

LF>Здравствуйте, Amor, Вы писали:


A>>Здравствуйте, kmn, Вы писали:


A>>

kmn>>>При вызове функции FindResource Вы параметры местами перепутали:
A>>Ну да, так я вроде исправил...
A>>Так и делаю — не получается.

LF>трудно сказать почему не работает, все вроде правильно

LF>попробуй из MSDN взять пример и его запустить, а потом потихоньку меняй на свой.

LF>


Вообщем мне нужно было просто к екзешнику крепить бинарные данные. Я решил это способом ReadFile, WriteFile.
Мне достаточно.
Спасибо большое.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.