у меня возникает ошибка при вызове компонены на другом компьютере:
Error: "Exception of the server" . При этом компонента создается, но при вызове метода
из plain dll ( csp32.dll — API для сканирования Barcode), выдает ошибку.
я инсталлирую компоненту с помощью cabark.exe.
компонента, написанная на visual basic и инсталлированная с помощью пакета
package and deployment wizard,работает
для распространения компонент на c++, такого сервиса нет.
N>у меня возникает ошибка при вызове компонены на другом компьютере:
N>Error: "Exception of the server" . При этом компонента создается, но при вызове метода N>из plain dll ( csp32.dll — API для сканирования Barcode), выдает ошибку.
N>я инсталлирую компоненту с помощью cabark.exe.
N>компонента, написанная на visual basic и инсталлированная с помощью пакета N>package and deployment wizard,работает
N>для распространения компонент на c++, такого сервиса нет.
У меня была подобная проблема правда с компонентой написанной на С++. Проблема была из-за того, что стэк и куча на другой машине по умолчанию были меньшего размера чем у меня. Решилась проблема так: в опциях компилятора я поставил размер стека и кучи больше и все заработало. Как сделать это на VB я к сожаленью не знаю...
N>>у меня возникает ошибка при вызове компонены на другом компьютере:
N>>Error: "Exception of the server" . При этом компонента создается, но при вызове метода N>>из plain dll ( csp32.dll — API для сканирования Barcode), выдает ошибку.
N>>я инсталлирую компоненту с помощью cabark.exe.
N>>компонента, написанная на visual basic и инсталлированная с помощью пакета N>>package and deployment wizard,работает
N>>для распространения компонент на c++, такого сервиса нет.
S>У меня была подобная проблема правда с компонентой написанной на С++. Проблема была из-за того, что стэк и куча на другой машине по умолчанию были меньшего размера чем у меня. Решилась проблема так: в опциях компилятора я поставил размер стека и кучи больше и все заработало. Как сделать это на VB я к сожаленью не знаю...
Здравствуйте Slayer.
Спасибо за совет.
Такая ошибка возникает при работе с компонентой,написанной на c++,
а с компонентой,написанной на visual basic все o'k,
(т.к. упаковка и распространение идет с package and deployment wizard,
чего в visual c++ не предусмотрено).
Каким способом Вы распространяете компоненту( на c++, с ATL) на другой компьютер ?
я использую программу cabarc.exe
N>Такая ошибка возникает при работе с компонентой,написанной на c++, N>а с компонентой,написанной на visual basic все o'k, N> (т.к. упаковка и распространение идет с package and deployment wizard, N> чего в visual c++ не предусмотрено). N>я использую программу cabarc.exe
Я понятия не имею что это за программа и визард, однако нюхом чую что к стэку и хипу они никакого отношения не имеют, т.к. стэк и хип — это грубо говоря память которая выделяется любому процессу. Возможно,(хотя мне это видится очень маловероятным) именно Бэсиковским программам память не выделяется и дело совсем в другом, однако рекомендую вам все-таки почитать чего-нить про стэк(stack) и кучу(heap) в Бэсике...
И вот чего-то в мсдн про стэк в Бэсике таки нашел: stack space errors(введи в индексе).
N> Каким способом Вы распространяете компоненту( на c++, с ATL) на другой компьютер ?
Здравствуйте Slayer, Вы писали:
S>И вот чего-то в мсдн про стэк в Бэсике таки нашел: stack space errors(введи в индексе).
Хотя это скорей всего совсем нето
Опс. Я подумал что это с Бэсиковской компонентой косяк... Совсем туплю под конец рабочего дня...
Зарегить компоненту так:
regsvr32.exe имя.dll
Если будет возникать такая же ошибка, то дело скорей всего в стэке или куче. Выставляются они так: Project->Settings->Link-> тут в самом низу добавляешь ключи /stack:размер /heap:размер
Размер выставляется в байтах — вначале можешь попробовать поставить что-нить вроде мега и туда и туда.
Как узнать где не хватает памяти в стэке или куче? Так: если ты используешь операции new/delete — то это куча, если что-нить вроде char c[100000] — это стэк. В любом случае ручками проставляя различные значения в ключах /stack и /heap ты это выяснишь...
Опс. Я подумал что это с Бэсиковской компонентой косяк... Совсем туплю под конец рабочего дня...
Зарегить компоненту так:
regsvr32.exe имя.dll
Если будет возникать такая же ошибка, то дело скорей всего в стэке или куче. Выставляются они так: Project->Settings->Link-> тут в самом низу добавляешь ключи /stack:размер /heap:размер
Размер выставляется в байтах — вначале можешь попробовать поставить что-нить вроде мега и туда и туда.
Как узнать где не хватает памяти в стэке или куче? Так: если ты используешь операции new/delete — то это куча, если что-нить вроде char c[100000] — это стэк. В любом случае ручками проставляя различные значения в ключах /stack и /heap ты это выяснишь...
Удачи
Re[5]: Ошибка при создании компонента
От:
Аноним
Дата:
14.06.02 09:54
Оценка:
Здравствуйте Slayer, Вы писали:
S>Опс. Я подумал что это с Бэсиковской компонентой косяк... Совсем туплю под конец рабочего дня...
S>Зарегить компоненту так: S>
S>regsvr32.exe имя.dll
S>
S>Если будет возникать такая же ошибка, то дело скорей всего в стэке или куче. Выставляются они так: Project->Settings->Link-> тут в самом низу добавляешь ключи /stack:размер /heap:размер
S>Размер выставляется в байтах — вначале можешь попробовать поставить что-нить вроде мега и туда и туда.
S>Как узнать где не хватает памяти в стэке или куче? Так: если ты используешь операции new/delete — то это куча, если что-нить вроде char c[100000] — это стэк. В любом случае ручками проставляя различные значения в ключах /stack и /heap ты это выяснишь...
S>Удачи
моя компонента,написанная на c++ с использованием ATL, работает на компьютере,где создавалась.
но перенессенная на другой компьютер и вызванная Internet Explorer, выдает эту ошибку.
компонента зарегистрирована имя.exe/regserver.
дело в том, что простая компонента (на c++, без использования API для Barcode),
при переносе на другой компьютер ,работает
какой программой Вы инсталлируете компонент на других компьютерах ?
Здравствуйте Аноним, Вы писали:
А>дело в том, что простая компонента (на c++, без использования API для Barcode), А> при переносе на другой компьютер ,работает
Тогда дело скорей всего в недостающих дллках(API для Barcode в дллке ведь?). Копирование этих длл в какой-нить каталог должно помочь...
Здравствуйте Slayer, Вы писали:
S>Здравствуйте Аноним, Вы писали:
А>>дело в том, что простая компонента (на c++, без использования API для Barcode), А>> при переносе на другой компьютер ,работает
S>Тогда дело скорей всего в недостающих дллках(API для Barcode в дллке ведь?). Копирование этих длл в какой-нить каталог должно помочь...
с дллкой все в норме, занесена в windows/system каталог, в любом случае спасибо вам за переписку, если
встретитесь с такой ошибкой и найдете выход, как-нибудь сообщите через форум.