Манифест для comctl32.dll v6.0 и C#
От: Андрей Россия  
Дата: 26.09.02 06:44
Оценка:
Привет всем!

А кто-нибудь знает, как подружить прогу на C# и comctl32.dll версии 6.0? Про то, что можно манифест рядом с exe-шником положить, я знаю. Интересует, как этот самый манифест ПРАВИЛЬНО в ресурсы засунуть, если это в данном случае вообще возможно.

Заранее благодарю за ответы
Re: Манифест для comctl32.dll v6.0 и C#
От: Trantor Россия  
Дата: 26.09.02 09:51
Оценка:
Здравствуйте Андрей, Вы писали:

А>Привет всем!


А>А кто-нибудь знает, как подружить прогу на C# и comctl32.dll версии 6.0? Про то, что можно манифест рядом с exe-шником положить, я знаю. Интересует, как этот самый манифест ПРАВИЛЬНО в ресурсы засунуть, если это в данном случае вообще возможно.


А>Заранее благодарю за ответы


Ты имеешь в виду чтоб в IL было .manifestres на comctl32.dll???
... << Янус 1.0 alpha 9 Trantor >>
В жизни мало быть умным, надо еще быть не дураком.
Re[2]: Манифест для comctl32.dll v6.0 и C#
От: Андрей Россия  
Дата: 26.09.02 10:01
Оценка:
Здравствуйте Trantor, Вы писали:

skip

T>Ты имеешь в виду чтоб в IL было .manifestres на comctl32.dll???


Я имею ввиду, чтобы XP при загрузке проги находила в ресурсах этот манифест и использовала новую версию Common Controls Library. Как это делается в программах на MFC и WinAPI, я знаю. А вот с C# это не проходит, правда, я глубоко не копал — надеялся на халяву ответ получить
Re[3]: Манифест для comctl32.dll v6.0 и C#
От: Trantor Россия  
Дата: 26.09.02 11:19
Оценка:
Здравствуйте Андрей, Вы писали:

А>Я имею ввиду, чтобы XP при загрузке проги находила в ресурсах этот манифест и использовала новую версию Common Controls Library. Как это делается в программах на MFC и WinAPI, я знаю. А вот с C# это не проходит, правда, я глубоко не копал — надеялся на халяву ответ получить


А ты про это:
<dependency> 
 <dependentAssembly> 
  <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/> 
 </dependentAssembly> 
</dependency>


У меня к сожалению не XP (а может и к счастью), так что даже не знаю...
А если не секрет, как ты это на MFC,WinAPI делаешь, может пригодится.
В жизни мало быть умным, надо еще быть не дураком.
Re[4]: Манифест для comctl32.dll v6.0 и C#
От: Андрей Россия  
Дата: 26.09.02 11:33
Оценка:
Здравствуйте Trantor, Вы писали:

skip

T>У меня к сожалению не XP (а может и к счастью), так что даже не знаю...

T>А если не секрет, как ты это на MFC,WinAPI делаешь, может пригодится.

Почитай здесь
Автор(ы): Акжан Абдулин
Дата: 04.12.2001
Re[5]: Манифест для comctl32.dll v6.0 и C#
От: MaxMP Россия  
Дата: 26.09.02 12:24
Оценка: 6 (1)
Я делаю это так. Это, конечно, не самый лучший способ, но работает.
Смысл в том, что надо добавить ресурс типа RT_MANIFEST в exe файл сборки, причем ресурс должен быть Win32, а не .Net.
Так что окрываем exe файл в студии, правой кнопкой на пустом месте — Add Resource, в диалоге жмем Import..., далее браузим до .manifest файла (который должен точно работать, то есть должен быть проверенным в виде <name>.exe.manifest). OK — появляется диалог типа ресурса, пишем — RT_MANIFEST. Далее полученому ресурсу меняем id co ста с лишним до 1.
Сохраняем. Проверяем .
Re[6]: Манифест для comctl32.dll v6.0 и C#
От: MaxMP Россия  
Дата: 26.09.02 12:28
Оценка:
Да, чуть не забыл.
Контролы будут отображаться со скином, только если их свойсвто FlatStyle выставить в System.
Re[6]: Манифест для comctl32.dll v6.0 и C#
От: Андрей Россия  
Дата: 27.09.02 03:45
Оценка:
Здравствуйте MaxMP, Вы писали:

MMP>Я делаю это так. Это, конечно, не самый лучший способ, но работает.

MMP>Смысл в том, что надо добавить ресурс типа RT_MANIFEST в exe файл сборки, причем ресурс должен быть Win32, а не .Net.
MMP>Так что окрываем exe файл в студии, правой кнопкой на пустом месте — Add Resource, в диалоге жмем Import..., далее браузим до .manifest файла (который должен точно работать, то есть должен быть проверенным в виде <name>.exe.manifest). OK — появляется диалог типа ресурса, пишем — RT_MANIFEST. Далее полученому ресурсу меняем id co ста с лишним до 1.
MMP>Сохраняем. Проверяем .

Спасибо, но это не совсем то, что надо. Хотелось бы как-то в проект это вставлять, а то геморройно после каждой сборки все это заново проделывать
Re[7]: Манифест для comctl32.dll v6.0 и C#
От: MaxMP Россия  
Дата: 27.09.02 16:42
Оценка: 12 (1)
Здравствуйте Андрей, Вы писали:

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


MMP>>Я делаю это так. Это, конечно, не самый лучший способ, но работает.

MMP>>Смысл в том, что надо добавить ресурс типа RT_MANIFEST в exe файл сборки, причем ресурс должен быть Win32, а не .Net.
MMP>>Так что окрываем exe файл в студии, правой кнопкой на пустом месте — Add Resource, в диалоге жмем Import..., далее браузим до .manifest файла (который должен точно работать, то есть должен быть проверенным в виде <name>.exe.manifest). OK — появляется диалог типа ресурса, пишем — RT_MANIFEST. Далее полученому ресурсу меняем id co ста с лишним до 1.
MMP>>Сохраняем. Проверяем .

А>Спасибо, но это не совсем то, что надо. Хотелось бы как-то в проект это вставлять, а то геморройно после каждой сборки все это заново проделывать


Ну тогда — http://www.msjogren.net/dotnet/eng/tools/default.asp
см "ThemeMe" — в комплекте есть и пример solution'а.
Re[8]: Манифест для comctl32.dll v6.0 и C#
От: Андрей Россия  
Дата: 29.09.02 11:31
Оценка:
Здравствуйте MaxMP, Вы писали:

skip

MMP>Ну тогда — http://www.msjogren.net/dotnet/eng/tools/default.asp

MMP>см "ThemeMe" — в комплекте есть и пример solution'а.

Спасибо!!!
Там есть еще одна интересная ссылка
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.