Загрузка emf файла из ресурса
От: Димыч_  
Дата: 03.07.04 20:55
Оценка:
Привет всем!
Мне надо загрузить метафайл и проиграть его.
Замахался.
Код примерно такой (я убрал все проверки):

HENHMETAFILE ee=(HENHMETAFILE)LoadResource(hi,FindResource(hi,MAKEINTRESOURCE(EMF01),"EMF"));
LockResource(ee);
UINT sz=GetEnhMetaFileBits(ee,0,NULL);
// вот здесь возвращается ноль с кодом ошибки 6
// "Неправильный описатель"
LPBYTE buf=(LPBYTE)GC_malloc(++sz);
GetEnhMetaFileBits(ee,sz,buf);
HENHMETAFILE emf=SetEnhMetaFileBits(sz,buf);
PlayEnhMetaFile(hdc,emf,&r);

Что я не так делаю?
Обрыл msdn — там только примеры по загрузке из файла и записи туда,
ну да это у меня и без них получилось, да не надо...

Поробовал по-другому, но этот код тоже не работает.

HENHMETAFILE ee=(HENHMETAFILE)LoadResource(hi,FindResource(hi,MAKEINTRESOURCE(rc),RESOURCE_EMF_TYPE));
LockResource(ee);
emf=CopyEnhMetaFile(ee,NULL);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.