Загрузка COM DLL - PullRequest
       1

Загрузка COM DLL

0 голосов
/ 18 февраля 2012

Я только начал использовать QT.Прямо сейчас мне нужно перенести некоторый код, который у меня есть в проекте Visual C ++, в QT.

Единственное, что в данный момент делает проект, - это открывает Photoshop и устанавливает видимый флаг в false (он будет использоваться для автоматизации)., поэтому многие вещи будут добавлены позже).

Что я делаю, я импортирую 2 dll для фотошопа (ПРИМЕЧАНИЕ: у меня нет .h или .lib для них, только файлы .dll)Метод, который я использую для импорта этих библиотек, заключается в импорте libid, поскольку все остальные методы, которые я пробовал, не работали.Это COM-объекты, кстати.

Это мой код VC ++:

//library ID of Photoshop.dll
#import "libid:E891EE9A-D0AE-4cb4-8871-F92C0109F18E"
//library ID of PhotoshopTypeLibrary.dll
#import "libid:4B0AB3E1-80F1-11CF-86B4-444553540000"

int main()
{
 Photoshop::_ApplicationPtr app( __uuidof(Photoshop::Application));
 app->Visible = false;

 return 0;
}

Теперь QT выдает мне несколько предупреждений и ошибок в строках импорта:

warning: #import is a deprecated GCC extension
error: libid:E891EE9A-D0AE-4cb4-8871-F92C0109F18E: No such file or directory

И затем, после этого, он говорит (очевидно), что «Photoshop» не объявлен.

Теперь я искал, и самым близким решением, которое я нашел, было включение файлов .tlh, которые были созданы в моем проекте VC ++., но когда я это сделал, я получил более 1 тысячи ошибок и предупреждений, так что это явно не сработало.

Может кто-нибудь сказать мне, что здесь делать?Я серьезно застрял!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...