подскажите как использовать 3D контроллы из WINXP? в моей литературе не описано использование 3D контроллов, только контроллы WIN98,которые напоминают мне о школе)
Создаешь файл xml (например, manifest.xml) со следующим текстом: Код (Text): <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="CompanyName.ProductName.YourApplication" type="win32"/> <description>Your application description here.</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/> </dependentAssembly> </dependency> </assembly> В файле ресурсов добавляешь строку: Код (Text): CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "manifest.xml"
ээм, неполучилось создал .xml документ с данным содержимым, и всадил в файл ресурсов нужную строку, но контроллы так и остались квадратными
Можно не включать в исполнимый файл манифест а положить его в папку с программой назвав его <MyProg>.exe.manifest
ммм....я создаю контроллы функцией CreateWindow, в файле ресурсов описаны только менюхи и ссылка на манифест.манифест слит в отдельный файл, а компилил я MASM'ом
Думаю, вот это тебе поможет: #pragma comment(lib, "ComCtl32.Lib") #include <windows.h> #include <commctrl.h>
Пропустил строчку ]#define _WIN32_WINNT 0x0501: Код (Text): #pragma comment(lib, "ComCtl32.Lib") [b]#define _WIN32_WINNT 0x0501[/b] #include <windows.h> #include <commctrl.h>
В заголовок обычно *.h или *.cpp Код (Text): #pragma comment(lib, "ComCtl32.Lib") // Это опреджеление говорит о целевой версии WinXP // чтобы использовать библиотеку comctl именно 6-й версии. // Нужно добавлять до включения commctrl.h #define _WIN32_WINNT 0x0501 #include <windows.h> #include <commctrl.h>