Страница: 1 | 2 |
Вопрос: Изменить ресурс в своём же экзешнике.
Добавлено: 21.02.10 17:05
Автор вопроса: Zahar | Web-сайт:
Скажем, я написал программу на VB6, которая использует картинку, хранящуюся в ресурсе исполняемого файла.
Теперь хочу написать программку (вторую), которая в первой могла бы заменять эту картинку на другую, выбранную пользователем.
Ещё раз: у меня 2 проги в виде exe-файлов (обе мои, ничего взламывать не собираюсь). Как при помощи одной изменить картинку, хранящуюся в ресурсе другой? Чтобы при загрузке в основной программе была уже новая картинка.
Поготите, пожалуйста...
Ответы
Всего ответов: 16
Номер ответа: 1
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #1
Добавлено: 21.02.10 18:16
а тебе обязательно изменять ресурсы проги?
мож проще извлечь картинку из ресурсов а 2 прога пусть уже грузит эту картину
если обязательно - советую поискать примеры чтения и изменения тэгов mp3
Номер ответа: 2
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #2
Добавлено: 21.02.10 18:24
вот пример сохранения картинки из ресурсов:
p.s. спасибо Smith'у за помощь в написании данного кода
Номер ответа: 3
Автор ответа:
AWP
ICQ: 345685652
Вопросов: 96
Ответов: 1212
Web-сайт:
Профиль | | #3
Добавлено: 21.02.10 20:45
Сохранять на диск иногда не представляется возможным.
А ты не хочешь картинку в конец exe запихнуть, а потом от туда грузить? Тамже её удобно и заменять.
Номер ответа: 4
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #4
Добавлено: 21.02.10 22:36
вот пример сохранения картинки из ресурсов:
Dim B() As Byte
B = LoadResData(101, "CUSTOM"
Open App.Path & "\temp.bmp" For Binary As #1
Put #1, , B() ' для получения - Get
Close #1
Я, видимо, слишком мало описал то, что мне надо - двух раз не достаточно, чтобы понять.
Сохранять на диск иногда не представляется возможным.
А ты не хочешь картинку в конец exe запихнуть, а потом от туда грузить? Тамже её удобно и заменять.
Если можно - подробнее...
Номер ответа: 5
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #5
Добавлено: 21.02.10 22:51
ты видимо не ценишь помощь!
и плюс ко всему сам не догоняешь, что я дал то, что ты просил, только не полностью и не в исходнике
Номер ответа: 6
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #6
Добавлено: 21.02.10 23:31
ты видимо не ценишь помощь!
и плюс ко всему сам не догоняешь, что я дал то, что ты просил, только не полностью и не в исходнике
Извини, если обидел. Дело в том, что в своей проге я приведенный тобою код использую много раз, для того, чтобы загружать в просматриваемые в WebBrowser html-страницы (хранящиеся в ресурсе экзешника) графику (опять же хранящуюся в ресурсе этого же экзешника). Но хоть убей, не могу понять, как с помощью этого же кода можно изменить exe-файл.
Может быть этот кусочек кода является частью кода, решающей мою проблему, но боюсь, что это далеко не основная часть. Объясни подробнее, есмли можешь...
Номер ответа: 7
Автор ответа:
UnDeAdZak
Вопросов: 80
Ответов: 476
Профиль | | #7
Добавлено: 21.02.10 23:39
Just, он говорит, что в уже скомпилированный экзешник надо запихнуть картинку, а ты даёш, насколько я глупый понимаю, код для загрузки кода в самом проэкте.
Номер ответа: 8
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #8
Добавлено: 21.02.10 23:55
Я даю пример кода как из ресурсов скомпелированного exe извлечь bmp и сохранить его на жесткий
далее я предложил его просто как картинку загружать, если подходит такой вариант - если нет смотреть пример с mp3 тегом (в поиске: Get + Set ID3)
там показано как загрузить скажем первые 128 байт с конца и + ипроверить если ключевое слово совпадет (можно сделать метку в файле где начало ресурсов) то записывать
вот часть кода:
Номер ответа: 9
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #9
Добавлено: 22.02.10 00:06
если не найдешь - прямая ссылка на простой пример работы с тэгами:
http://www.freevbcode.com/code/ID3Tag.zip
Номер ответа: 10
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #10
Добавлено: 22.02.10 00:07
Just, он говорит, что в уже скомпилированный экзешник надо запихнуть картинку, а ты даёш, насколько я глупый понимаю, код для загрузки кода в самом проэкте.
Вот именно это я и имею в виду...
Номер ответа: 11
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #11
Добавлено: 22.02.10 00:21
Толи я дурак, толи лыжи не едут...
чем тебе не подходит пример чтение\запись mp3 тегов?
тем что это mp3? )
или тем что там не написано как полностью заменять ресурсы?
Номер ответа: 12
Автор ответа:
AWP
ICQ: 345685652
Вопросов: 96
Ответов: 1212
Web-сайт:
Профиль | | #12
Добавлено: 22.02.10 01:14
Ему одной прогой нужно заменить ресурс в другой.
Пиши картинку в конец файла, а загружай вот так
http://vbnet.ru/forum/show.aspx?id=182899
Номер ответа: 13
Автор ответа:
Just
Вопросов: 4
Ответов: 330
Профиль | | #13
Добавлено: 22.02.10 10:28
я промолчу...
хотя, нет! я все скажу! ))
в самом начале автор вопроса писал что проги его, так почему бы не изменить саму прогу шоб она сама грузила рисунок из папки
и 2-е:
пример классный, но как я понял, это на тему как загрузить не сохраняя временный файл на жестком (зачем мучить API если можно картинку сбрасывать в тот же темп, только не надо писать что а вдруг винт заблокирован или его нет - тогда вообще языком программирования автор ошибся)
все равно из тех же многострадальных примеров с mp3 надо смотреть как побайтово записывать в exe
впрочем, может конечно дело и не в лыжах... )
Номер ответа: 14
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #14
Добавлено: 22.02.10 10:36
Zahar, в поиск по форуму, примеры кода по обновлению ресурсов тут выкладывали, и я в том числе. Вроде В любом случае, если не найдешь, BeginUpdateResource по этому ключевому слову можно поискать в интернете
Номер ответа: 15
Автор ответа:
AWP
ICQ: 345685652
Вопросов: 96
Ответов: 1212
Web-сайт:
Профиль | | #15
Добавлено: 22.02.10 12:53