Страницы: 1
Здравствуйте!
Есть проблема с использование xulrunner 24. Собираю на Mac OS 10.9.1 maverick с использованием sdk 10.8. Вот моя конфигурация сборки
if [ "$BUILD_TYPE" = "release" ]; then
SDK_DIR=../Mozilla-24.0.0-SDK
DIST_DIR=./release/dist
echo "mk_add_options MOZ_CO_PROJECT=xulrunner
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/release
mk_add_options MOZ_MAKE_FLAGS=-j1
ac_add_options --with-macos-sdk=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
ac_add_options --target=i386-apple-darwin10.0.0
ac_add_options --enable-macos-target=10.6
ac_add_options --enable-application=xulrunner
ac_add_options --enable-jemalloc
ac_add_options --enable-optimize
ac_add_options --enable-shared-js
ac_add_options --enable-cpp-rtti
ac_add_options --with-libxul-sdk
ac_add_options --disable-javaxpcom
ac_add_options --disable-webgl
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-crashreporter
ac_add_opt
Спасибо, было почти то))) Но проблему решил.
Использую VS2010 и xulrunner 10.2. В опциях проекта VS2010 есть опция Delay Loaded DLLs, туда вписал xul.dll и заработало) Кому интересно вот описание - http://msdn.microsoft.com/en-us/library/151kt790.aspx
Спасибо, что навели на мысль!!!
Тема закрыта.
Написал функция для сохранения картинок. Функция использует класс gfxImageSurface.
Как я понял методы для работоспособности gfxImageSurface необходима xul.dll. Все хорошо если dll xulrunner лежат вместе с exe файлом моей программы, но как сделать чтобы все dll xulrunner лежали в папке, например mozilla, а мой exe в другой?
Вот функция:
static sresult _SaveImage (nsIDOMElement* elem, const wxString& path) {
nsresult rv;
nsCOMPtr<nsIImageLoadingContent> imageContent = do_QueryInterface(elem, &rv);
NS_ENSURE_TRUE(imageContent, rv);
nsCOMPtr<imgIRequest> request;
rv = imageContent->GetRequest(nsIImageLoadingContent::CURRENT_REQUEST, getter_AddRefs(request));
NS_ENSURE_TRUE(request, rv);
nsCOMPtr<imgIContainer> container;
rv = request->GetImage(getter_AddRefs(container));
NS_ENSURE_TRUE(container, rv);
nsCOMPtr<gfxImageSurface> image;
rv = container->CopyFrame(imgIContainer::FRAME_FIRST, imgIContainer::FLAG_SYNC_DECODE, getter_AddRefs(image));
NS_ENSURE_TRUE(imag
Страницы: 1