Работа с ресурсами ...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
AHDPE@ich
Новичок
Новичок
Аватара пользователя
 
Сообщения: 44
Зарегистрирован: 14.07.2008 (Пн) 10:25
Откуда: Ульяновск

Работа с ресурсами ...

Сообщение AHDPE@ich » 14.07.2008 (Пн) 11:37

:?: КАК запихнуть какой-либо файл (dll например) в EXE-шник? задача состоит в том, чтобы при отсутствии этого самого файла "вытащить" его из EXE и сохранить на диск для последующего использования. :?:

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Сообщение Proxy » 14.07.2008 (Пн) 11:55

При отсутствии длл при объявлении его стандартным методом вынь не даст запуститься вашему ЕХЕ. А вообще в конец ЕХЕ можно дописывать сколько хочешь и что хочешь. Ничто не обращается к адресам после конца проекта.

AHDPE@ich
Новичок
Новичок
Аватара пользователя
 
Сообщения: 44
Зарегистрирован: 14.07.2008 (Пн) 10:25
Откуда: Ульяновск

Сообщение AHDPE@ich » 14.07.2008 (Пн) 11:57

ок. тогда уместный вопрос: как записывать "что хочешь"? сто раз слышал про это, а как делать - херывознает.
Не хочешь - давай как хочешь, а хочешь, так давай!

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Сообщение Proxy » 14.07.2008 (Пн) 12:14

Ну так грубо наброском...

Ch1 = freefile
Open App.path & environ("HomePath") & app.EXEname & ".exe" for binary as ch1
...
Put Ch1, lof(ch1) + 1, <-данные->
...
Close #ch1

ЗЫ. Если в чём-то ошибся, то сори, нету вб под рукой сейчас.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.07.2008 (Пн) 13:51

Proxy писал(а):При отсутствии длл при объявлении его стандартным методом вынь не даст запуститься вашему ЕХЕ. А вообще в конец ЕХЕ можно дописывать сколько хочешь и что хочешь. Ничто не обращается к адресам после конца проекта.


Если DLL или компонент не используется на этапе запуска, то еще-шник прекрасно запускается. Файл с DLL-кой можно примитивно засунуть в рессурсы EXE-шника, ну и восстановить и зарегистрировать оттуда.

Правда непонятно зачем подобный огород городить, но это другой вопрос...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

AHDPE@ich
Новичок
Новичок
Аватара пользователя
 
Сообщения: 44
Зарегистрирован: 14.07.2008 (Пн) 10:25
Откуда: Ульяновск

Сообщение AHDPE@ich » 14.07.2008 (Пн) 14:55

Нет ну я знаю, КАК из туда помещать, но не знаю как их использовать. знаю только как обращаться с vbResBitmap'ом и LoadResString'ом.

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Сообщение Proxy » 14.07.2008 (Пн) 19:17

Блин, не юзай этот бред(( Забей на некоторый тупой стандартный функциональный набор вб. Вот например PSet контролов типа пикчебокс или форм мало того работает медленнее аналогов API, так ещё и в использовании не проще.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 14.07.2008 (Пн) 23:32

задача состоит в том, чтобы при отсутствии этого самого файла "вытащить" его из EXE и сохранить на диск для последующего использования.

Такие программы удалять, а их авторам -- отрывать руки.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

ACiD
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 261
Зарегистрирован: 10.12.2005 (Сб) 2:29
Откуда: г. Санкт - Петербург

Сообщение ACiD » 14.07.2008 (Пн) 23:49

Хакер писал(а):Такие программы удалять, а их авторам -- отрывать руки.

Правильно, Windows в топку :)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 14.07.2008 (Пн) 23:53

ACiD
Она так не делает.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

ACiD
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 261
Зарегистрирован: 10.12.2005 (Сб) 2:29
Откуда: г. Санкт - Петербург

Сообщение ACiD » 15.07.2008 (Вт) 1:21

Хакер
Не помню когда хотел изменить один файл (какой то dll очень важный системный). После того как изменил ресурсы и сохранил, в течение нескольких минут файл заного переписался.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 15.07.2008 (Вт) 7:11

ACiD писал(а):Хакер
Не помню когда хотел изменить один файл (какой то dll очень важный системный). После того как изменил ресурсы и сохранил, в течение нескольких минут файл заного переписался.
Так и должно быть. Есть такая штука как кэш DLL.
Весь мир матрица, а мы в нем потоки байтов!

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 15.07.2008 (Вт) 7:44

ACiD
Не минут, а секунд. Системые файлы восстанавливаются из кэша. Если их и в кеше подправить, то выходит стандартное сообщение о том, что системные вайлы заменены неизвестными версиями, теперь вставьте установочный си-ди, бла-бла-бла.
AHDPE@ich
Если Вам так уж хочется "дискеточную" прогу, то сделайте загрузчик, хранящий в своих ресурсах всю папку с готовым приложением и библиотеками. При запуске он извлекает все это во временную папку и запускает главный файл. Вообще, можно даже не мучаться, не делать вручную, ибо есть куча подобных программ.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 15.07.2008 (Вт) 11:23

ACiD
Только Windows во-первых, не делает неправильные поступки, потому что ей так хочется, а всего-лишь противодействует совершению неправильных поступков.

Во-вторых, технология SFP (о который ты и говоришь) ничего из ресурсов не создаёт.

Так что Windows ничего такого не делает.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 16.07.2008 (Ср) 13:06

Хакер
Такие программы удалять, а их авторам -- отрывать руки.
Тогда удали у себя ProcessExplorer, Port/File/RegMon и оторви руки Руссиновичу. :)
А я все практикую лечение травами...

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 17.07.2008 (Чт) 8:25

удали у себя ProcessExplorer

Установи AceHelper
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 17.07.2008 (Чт) 12:23

Установи AceHelper
И? К чему это? Не вкурил...
А я все практикую лечение травами...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 60

    TopList