• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Функция прокси fRead на C#

Автор Matvey Kushakov, 28.08.20, 15:56:11

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Matvey Kushakov

Приветствую!
Пишу свой прокси на С#. Хочу сделать так, чтобы при попытке получения информации с документа выскакивал Messagebox с ошибкой, мол функция этим прокси не поддерживается (односторонний прокси). По логике вещей, я должен написать свой текст в параметр ErrMessage и вернуть что-то отличное от нуля. Так я и сделал, но почему-то Лоцман при вызове функции fRead тупо вылетает. В последней строке лога интегратора только запись о вызове fRead и никаких ошибок. Причём с остальными функциями всё хорошо: при корректном выполнении возвращается 0, а при ошибках 1 и текст содержания ошибки и Лоцман не крашится. Вот проблемный участок кода:
[DllExport("fRead", CallingConvention.StdCall)]
public static Int32 fRead(IProxyCall proxyCall, Model cmQuery, long inLoadLinkFiles, Model cmData,
                          [MarshalAs(UnmanagedType.LPStr)] out string ErrMessage)
{
    ErrMessage = "Получение инфломации в прокси не реализовано.";
    return 1;
}

В чём может быть проблема?

ЗЫ: атрибут DllExport беру из NuGet-пакета DllExport версии 1.7.3.

Matvey Kushakov

Ложная тревога... Я забыл поставить модификатор out к параметру cmData. С ним всё работает.