Создание файла ресурсов *.res

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 16:43

Здравствуйте Уважаемые!
Прочитал множество статей про работу с ресурсами, но все они описывают работу с исполняемыми файлами (*.exe) или библиотеками (*.dll).
Подскажите где почитать, о создании файла ресурсов *.res, желательно средствами VB6.
С уважением...
In der Beschrankung zeigt sich erst der Meister
Графоманю...

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Создание файла ресурсов *.res

Сообщение iGrok » 18.04.2010 (Вс) 16:56

Add-Ins -> Add-In Manager..
VB6 Resource Editor -> Load On Startup, Loaded -> OK

Tools -> Resource Editor
label:
cli
jmp label

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 17:28

iGrok писал(а):Add-Ins -> Add-In Manager..
VB6 Resource Editor -> Load On Startup, Loaded -> OK

Tools -> Resource Editor

Спасибо за ответ, но про редактор ресурсов я знаю. :D
Меня интересует программное создание файла ресурсов. Про rc.exe - знаю.
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 17:29

Зачем?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 17:32

Хакер писал(а):Зачем?

Для добавления файла *.manifest в файл ресурса, с последующем размещением в проекте. Ну и для саморазвития конечно же!
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 17:37

Для этого не надо создавать res-файл программно.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 17:38

Хакер писал(а):Для этого не надо создавать res-файл программно.

Можно подробнее...
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 18:01

Нельзя.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 18:04

Хакер писал(а):Нельзя.

Почему? :cry:
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 18:11

Если человек намерен получить бозон Хиггса и заявляет, что для этого ему нужен труп кролика, я в состоянии ответить ему, что для затеянного ну никак не нужен труп кролика. Я не могу рассказать подробнее, почему он не нужен для этого. Не нужен и всё.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 18:31

К своему стыду, никогда не слышал о бозоне Хиггса. :oops: В свободное время ознакомлюсь с этой темой подробнее.
В общем я хочу релизовать следующее:
Как известно, манифест это xml файл со своеё структурой. Между определёнными тегами, записаны данные о программе. Программно я создаю манифест.

Код: Выделить всё
Public Sub CreateManifest( _
                Optional FileName As String, _
                Optional CompanyName As String, _
                Optional ProductName As String, _
                Optional YourApp, _
                Optional Description As String)

Dim strManifest As String
Dim utfManifest As String
Dim varFN As String

strManifest = _
"<?xml version=" & """" & "1.0" & """" & " encoding=" & """" & "UTF-8" & """" & " standalone=" & """" & "yes" & """" & "?>" & vbCrLf & _
"<assembly xmlns=" & """" & "urn:schemas-microsoft-com:asm.v1" & """" & " manifestVersion=" & """" & "1.0" & """" & ">" & vbCrLf & _
"<assemblyIdentity" & vbCrLf & _
"    version = " & """" & "1.0.0.0" & """" & vbCrLf & _
"    processorArchitecture = " & """" & "X86" & """" & vbCrLf & _
"    Name = " & """" & CompanyName & "." & ProductName & "." & YourApp & """" & vbCrLf & _
"    type=" & """" & "win32" & """" & vbCrLf & _
"/>" & vbCrLf & _
"<description>" & Description & ".</description>" & vbCrLf & _
"<dependency>" & vbCrLf & _
"    <dependentAssembly>" & vbCrLf & _
"        <assemblyIdentity" & vbCrLf & _
"            type=" & """" & "win32" & """" & vbCrLf & _
"            Name = " & """" & "Microsoft.Windows.Common-Controls" & """" & vbCrLf & _
"            version = " & """" & "6.0.0.0" & """" & vbCrLf & _
"            processorArchitecture = " & """" & "X86" & """" & vbCrLf & _
"            publicKeyToken = " & """" & "6595b64144ccf1df" & """" & vbCrLf & _
"            language = " & """" & "*" & """" & vbCrLf & _
"        />" & vbCrLf & _
"    </dependentAssembly>" & vbCrLf & _
"</dependency>" & vbCrLf & _
"</assembly>"

utfManifest = StrConv(strManifest, vbUnicode)

If FileName = vbNullString Then
    varFN = "my"
Else
    varFN = FileName
End If

SaveFile App.Path & "\temp\" & varFN & ".manifest", utfManifest

End Sub


Файл ресурсов, создаю сответственно создав файлы xxx.rc и xxx.bat для rc.exe. Запускаю bat файл использую Shell.
Вот мне и хочеться исключить из алгоритма rc.exe и всё к нему прилагаемое.
Возможно ли это?
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 19:08

Какой смысл генерировать манифест программно причём таким диким способом?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 19:13

Хакер писал(а):Какой смысл генерировать манифест программно причём таким диким способом?

А, каким способом это делать? Хочется автоматизировать процесс создания манифеста.
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 19:31

В чём чёртов смысл склеивания дюжины константных строчек в одну константную строчку?

В чём смысл писать "<assembly xmlns=" & """" & "urn:schemas-microsoft-com:asm.v1" & """" & " manifestVersion=" & """" & "1.0" & """" & ">" вместо "<assembly xmlns=""urn:schemas-microsoft-com:asm.v1"" manifestVersion=""1.0"">"?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 19:45

Хакер писал(а):В чём смысл писать "<assembly xmlns=" & """" & "urn:schemas-microsoft-com:asm.v1" & """" & " manifestVersion=" & """" & "1.0" & """" & ">" вместо "<assembly xmlns=""urn:schemas-microsoft-com:asm.v1"" manifestVersion=""1.0"">"?

Свою ошибку понял, буду исправлять. :oops:
По поводу создания файла ресурсов, пнёшь в нужном направлении?
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Хакер » 18.04.2010 (Вс) 19:55

Нужное направление: найти и скачать описание res-формата.
Прочитать. Понять. Написать код.

Необходимость генерации такого манифеста программно не обоснована. Уж генерировать, так генерировать универсальный манифест.

Для тех, кто вчера родился, и думает, что манифест это штука для включения XP-стиля, скажу, что они заблуждаются примерно так же, как если бы считали, что любой паспорт — книжечка, в которой написано именно их имя и фамилия.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 18.04.2010 (Вс) 19:59

БОЛЬШОЕ СПАСИБО! :D
In der Beschrankung zeigt sich erst der Meister
Графоманю...

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

Re: Создание файла ресурсов *.res

Сообщение Денис » 19.04.2010 (Пн) 8:21

Diamock писал(а):Хочется автоматизировать процесс создания манифеста.


А теперь я, в лучших традициях своего нахождения на форуме, предлагаю труп кролика для решения задачи:

Когда у меня была шестая студия, я один раз сделал проект с уже включенным в файл ресурсов универсальным манифестом и сохранил проект в папке с образцами проектов студии. После чего у меня в диалоге создания проекта он висел, как шаблон.
Было удобно.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Создание файла ресурсов *.res

Сообщение Diamock » 19.04.2010 (Пн) 11:42

Денис писал(а):А теперь я, в лучших традициях своего нахождения на форуме, предлагаю труп кролика для решения задачи:

Когда у меня была шестая студия, я один раз сделал проект с уже включенным в файл ресурсов универсальным манифестом и сохранил проект в папке с образцами проектов студии. После чего у меня в диалоге создания проекта он висел, как шаблон.
Было удобно.

Спасибо за совет, в настоящее время именно так и пользуюсь шаблоном проекта с файлом ресурсом :wink:
In der Beschrankung zeigt sich erst der Meister
Графоманю...


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

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

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

    TopList