Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
Изменение данных в ресурсах исполняемом-файле средствами UpdateResource26.09.2013, 12:56. Показов 3753. Ответов 2
Господа, не получается обновить ресурсы в готовом exe-шнике на лету.
Суть задачи в следующем: при запуске программы в комбобоксах должны по умолчанию выставляться значения, установленные в прошлый запуск программы. Пример - настройка ком порта. Каждый раз запуская программу нужно открыть окошко настроек, выбрать там в нескольких комбобоксах требуемые значения, потом только приступать к работе с ком портом. В силу тестовой направленности программы приходится часто ее перезапускать. Так же нельзя выставить требуемые значения по умолчанию в момент создания приложения, так как приходится работать с разными устройствами при разных настройках. Навеяло вот этим. Читал вдобавок вот это. Короче - файл не вариант. Пробую связку: BeginUpdateResource, UpdateResource, EndUpdateResource, но что-то не получается. К проекту добавил файл ресурсов (.rc) следующего содержания: Функция для создания
Функция для просмотра
В Memo прекрасно выводится надпись "Моя строка". Далее делаю все по примеру, но сперва мои потуги: код
BeginUpdateResource отрабатывает. Сама функция UpdateResource успешно выполняется, возвращает true, и GetLastError возвращает ноль. Но. Следующая за ней EndUpdateResource возвращает false, и GetLastError говорит(110): "Системе не удается открыть указанное устройство или файл". И код примера: код
В примере все кругом false, и UpdateResource возвращает тоже false. Здесь мой самопал: 18 строка: добавил поиск самой себя 31 строка: изменил параметры FindResource(hExe, "AboutBox", RT_DIALOG) 50 строка: добавил захват ресурсов (все равно не работает от NULL) 51 строка: добавил по требованию приведение (char*) 74 строка: добавил GetLastError (87): Параметр задан неверно. Ссылка на сам пример. В общем помогайте. Добавлено ну практически сразу Еще вот здесь пытаюсь разобраться: Modify/Update resources of an Exe/DLL on the fly.
0
|
26.09.2013, 12:56 | |
Ответы с готовыми решениями:
2
Как в программе, в её исполняемом файле, написанном на winapi хранить другую программу в ресурсах? Хранение данных в исполняемом файле Можно ли сохранить базу данных в ресурсах программы (в .exe файле)? Адрес в исполняемом .a файле |
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
|
|
26.09.2013, 16:10 | 2 |
чем не понравился пример из Как сохранить настройки программы в ехе-шник? - разве не работает?
Добавлено через 1 минуту на вскидку - вы не можете обновить ресурсы самого себя - можно запустить копию которая обновит ресурсы вашей программы-оригинала и умрет вернув управление оригиналу с обновленными ресурсами
1
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
27.09.2013, 09:05 [ТС] | 3 |
0
|
27.09.2013, 09:05 | |
27.09.2013, 09:05 | |
Помогаю со студенческими работами здесь
3
Информация о исполняемом файле. Замена icon в исполняемом файле «Лишние» строки в исполняемом файле Сохранение информации в самом исполняемом файле Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |