Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/30: Рейтинг темы: голосов - 30, средняя оценка - 4.57
MaD1

Как сделать манифест??

07.02.2011, 12:30. Показов 6902. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Люди! Что нужно сделать, чтобы замутить в XP такие же красивые кнопочки и все остальное? Работаю в Builder'e. Что-то слышал про манифест только ниче не понял Или дайте ссылку на сорц
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.02.2011, 12:30
Ответы с готовыми решениями:

Манифест
Не подскажите, как прилепить manifest к проекту?

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

Как подключить к приложению манифест?
расскажите пожалуйста пошагово,что делать,чтобы подключить файл манифеста в проект ,чтобы интерфейс был как у Win XP,есть код манифеста на...

6
ManiaK
08.02.2011, 14:36
http://www.dev.qpp.ru/modules.php?name=Content&pa=showpage&pid =1
MaD1
08.02.2011, 14:47
Спасибо!
Но не то... мне про билдер нужно. И чтобы манифест был 'слеплен' с программой, чтобы его не таскать с собой.
4 / 4 / 2
Регистрация: 09.12.2010
Сообщений: 278
08.02.2011, 16:36
хай Mad !!!

вообщем фишка в чем ?
2 пути либо ты делаешь как пишет микрософт это делаешь специальный файл для манифеста и цепляешь его к ресурсам
либо качаешь компонент.....
в 7 дельфи он есть а вот в 6 билдере нет !
надо искать.
Видел я его точно но не обращал внимание.

найду скажу где лежит.

ЗЫ. бороться , искать - найти и перепрятать !
)) Знал знал я такой город, крупный промышленный центр Казахстана.
0
4 / 4 / 2
Регистрация: 09.12.2010
Сообщений: 278
08.02.2011, 21:04
Манифест(manifest) - это текст на языке XML, описывающий нашу программу и библиотеки, необходимые для ее работы. В данном случае мы рассматриваем манифест для подключения шестой библиотеки common controls, включенной в состав Windows XP
Манифест лучше всего создавать как внешний файл. Назвать его можно как угодно, к примеру 'data.bin'. Создав файл с таким именем, запишите в него следующий текст:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<assemblyIdentity
version='5.1.0.0'
processorArchitecture='x86'
name='Author.Program_Name'
type='win32'
/>
<description>Program Description</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type='win32'
name='Microsoft.Windows.Common-Controls'
version='6.0.0.0'
processorArchitecture='x86'
publicKeyToken='6595b64144ccf1df'
language='*'
/>
</dependentAssembly>
</dependency>
</assembly>
Вообще, подключать манифест можно как через ресурсы приложения, так и используя внешний манифест. Внешний манифест подключается путем создания внешнего файла с именем типа 'application.exe.manifest', где 'application.exe' - имя исполняемого модуля вашей программы. Он помещается в одну папку с исполняемым модулем. Также можно использовать две версии манифеста: в виде ресурсов и в виде внешнего файла. В этом случае преимущество имеет дисковая версия манифеста.
0
4 / 4 / 2
Регистрация: 09.12.2010
Сообщений: 278
08.02.2011, 21:09
то же но более полное
как ресурс сделать и подключить сказать ?
кстати если ресурс добавить к проекту никаких файлов XML валяться не будут !!!!
это ведь так тебя раздражало ?
запомни ресурс номер 24, это важно.

Удачи перец !

Написанный ниже текст предназначен только для Windows XP (и ее продолжений)

Самый простой вариант - это написать манифест, позволяющий Windows XP на стадии загрузки программы подключить нужную версию библиотеки разделяемых элементов (common controls), и занести его в ресурсы.

Q: Что такое манифест?
A: Манифест(manifest) - это текст на языке XML, описывающий нашу программу и библиотеки, необходимые для ее работы. В данном случае мы рассматриваем манифест для подключения шестой библиотеки common controls, включенной в состав Windows XP.

Лирическое отступление
Здесь нужно сказать, почему для подключения этой самой библиотеки в Windows XP нужно предпринимать какие-либо действия. Ведь для подключения этой же библиотеки в предыдущих версиях Windows никаких усилий не требовалось: достаточно подключить в проект библиотеку comctl32.lib и инициализировать ее с помощью функции InitCommonControls(), прописанной в commctrl.h
Дело в том, что в Windows XP существует две разные библиотеки common controls: одна 'старая', версии 5.80, которая входит в поставку Internet Explorer 5.5 и которая может быть установлена на любую версию Windows, и 'новая' версия - 6.0, которая и обеспечивает XP-интерфейс, т.е. поддержку визуальных стилей (visual themes)
Вы можете спросить, а почему бы этим странным людям из Microsoft просто не заменить бы 'старую' версию на 'новую'?
Дело в том, что до выхода Windows XP часть оконных классов - так называемые базовые классы окон - кнопки, статики (static text), поля ввода (editbox), скроллбары, списки и комбобоксы - хранилась в основной библиотеке, отвечающей за элементы пользовательского интерфейса - user.exe (Да, да, именно user.exe, а не user32.dll) Теперь же, все они 'переехали' (нет, только новые версии - совместимость, понимаете ли) в библиотеку comctl32.dll
Из-за этого 'старая' библиотека оставлена на своем прежнем месте, а новая засунута немножко дальше. И чтобы извлечь именно новую версию и нужен манифест.

Формат манифеста
Манифест лучше всего создавать как внешний файл. Назвать его можно как угодно, к примеру 'data.bin'. Создав файл с таким именем, запишите в него следующий текст:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<assemblyIdentity
    version='5.1.0.0'
    processorArchitecture='x86'
    name='Author.Program_Name'
    type='win32'
/>
<description>Program Description</description>
<dependency>
    <dependentAssembly>
    <assemblyIdentity
        type='win32'
        name='Microsoft.Windows.Common-Controls'
        version='6.0.0.0'
        processorArchitecture='x86'
        publicKeyToken='6595b64144ccf1df'
        language='*'
    />
</dependentAssembly>
</dependency>
</assembly>
Лирическое отступление
Текст приведенный на этой странице можно копировать прямо из FAQ в какой-нибудь текстовый редактор, поддерживающий сохранение в текстовом формате, например в notepad.

Написали? Да у вас успехи в программировании! Теперь измените имя программы в 6-ой строке name='...' (не используйте пробелов, рекомендуется форма 'Author.ProgramName' и описание программы в 9-ой между тэгами
0
MaD1
09.02.2011, 19:45
Ага, спасибо. Попробую. Есличе мыльну
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.02.2011, 19:45
Помогаю со студенческими работами здесь

Как подключить указанный манифест, чтобы нормально определять Windows 10 через getversionex() ?
https://msdn.microsoft.com/ru-ru/library/windows/desktop/dn481241(v=vs.85).aspx Ребят объясните поэтапно как подключить данный манифест...

манифест
Постоянно компилится манифест в программу , как убрать? delphi xe3

Манифест
Добрый день. Поначалу у меня была проблема с drag and drop в lisbox, но так, как тема ушла далеко в сторону, я решил создать другую тему...

манифест
Всем привет! Ребят хочу собрать исполняемый джарник. В фал манифеста пишу: Main-Class: Zxcv.main Так же скомпилировал байт...

Манифест Windows XP
Кинул в Dtamodule1. Манифест ХР все стало в стили ХП как теперь отключить этот стиль :) . Удаление пиктограмки манифеста с формы не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru