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

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

07.02.2011, 12:30. Показов 6933. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru