Полезная информация

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.

№119-08-2008 16:53:23

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Использование ф-ий стороннего длл

Добрый день всем,
Требуется написать плагин который будет вызывать пару методов из дллки msnetobj.dll , возможно ли это реализовать в плагине и каким путем ? Я не требую писать за меня код , подойдет и ссылка на ман если он имеется ) Заранее благодарен за помощь.

Отсутствует

 

№220-08-2008 13:30:48

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Первое, что приходит в голову, написать XPCOM компоненту (dll), которая и будет вызывать эти методы ... Насчет javascript сомневаюсь, что это возможно ...
В инете всего один источник, в ктором подробно и толково написано, как создавать XPCOM:
http://www.iosart.com/firefox/xpcom/

Отсутствует

 

№320-08-2008 17:36:23

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Благодарю за совет, я уже пошел тем же путем и написал компоненту, осталось только разобраться с работой со строками, т.к нужно вернуть строку, но пока работа с ними несколько ставит меня в тупик :\

Отсутствует

 

№420-08-2008 17:38:49

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Благодарю за совет, я уже пошел тем же путем и написал компоненту, осталось только разобраться с работой со строками, т.к нужно вернуть строку, но пока работа с ними несколько ставит меня в тупик :\

Может, стоит поконкретнее описать проблему? Авось кто-нибудь да поможет :)

Отсутствует

 

№520-08-2008 18:29:23

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Интереснее самому ковыряться :P Но если кратко, то возвращается только один символ из строки , если передавать указатель , то не возвращается вообще ничего:
NS_NAMED_LITERAL_STRING(_retval, "src");
допустим такой вариант возваращет только первый символ ...

Отредактировано vlad3412 (20-08-2008 18:37:25)

Отсутствует

 

№621-08-2008 11:09:59

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Там такая забавная канитель может получиться с преобразованием nsEmbedString в nsEmbedCString ... :)

Отсутствует

 

№721-08-2008 12:54:20

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Да уж , забавная не то слово )
NS_UTF16ToCString(nsEmbedString(pvRet.bstrVal),
                    NS_CSTRING_ENCODING_UTF8,
                    _retval);
Такой вариант вызывает крэш браузера ) _retval объявлен как nsACString & ... Не могу пока понять в чем собственно трабл.

Отсутствует

 

№821-08-2008 13:01:15

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Странно ... У меня такой вот код нормально работает:

Выделить код

Код:

nsEmbedCString strOut;
NS_UTF16ToCString(	nsEmbedString(strIn), 
				  	NS_CSTRING_ENCODING_UTF8, 
				  	strOut);

при этом strIn это nsEmbedString.
Может, не нужно _retval объялять как ссылку?

Отсутствует

 

№921-08-2008 13:12:10

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Можно _retval объявить и по-другому эффект сохраняется , пробовал и такой вариант :
CString str = pvRet.bstrVal;
_retval = str;

последствия собственно те же ... pvRet.bstrVal имеет тип BSTR , врядли с ним вообще должны возникать такие проблемы. Возможно ли падение из-за длины строки ? У меня там порядка 19 тысяч символов )

Отсутствует

 

№1021-08-2008 13:19:36

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Думаю, длина строки значения не имеет. Я у себя туда копировал весь текст HTML страницы, причем проверял на очень большиx (мегабайта полтора - текстовая страница, так что это уже миллионы символов).

Пробовали не использовать CString? Может быть обычный std::string поможет?

Отсутствует

 

№1121-08-2008 13:46:28

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Пробовал , не помог ...

Отсутствует

 

№1221-08-2008 17:50:08

vlad3412
Участник
 
Группа: Members
Зарегистрирован: 19-08-2008
Сообщений: 7
UA: Firefox 3.0

Re: Использование ф-ий стороннего длл

Трабл был решен скачиванием последней версии SDK )

Отсутствует

 

№1321-08-2008 17:53:51

oldfriend
Участник
 
Группа: Members
Зарегистрирован: 24-07-2008
Сообщений: 22
UA: Firefox 2.0

Re: Использование ф-ий стороннего длл

Все гениальное просто ... как всегда ... :)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]