|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
Пытаюсь настроить печать в PDF-принтер под названием NovaPDF Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
из данного кусочка работает все, кроме строки o.GetActiveProfile2(ls_strOldActiveProfileID); после выполнгения данной строки, в переменную ls_strOldActiveProfileID должны прийти данные, но приложение падает с ошибкой Application terminated. Error: Error calling external object function getactiveprofile2 at line 30 in clicked event of object cb_1 of w. Также падает и на вызове любой другой функции, в параметрах которых должна быть указана переменная, в которую должны прийти данные Вот описание данной функции: Код: sql 1. 2. 3. 4. 5. 6. 7.
Подскажите, может у кого есть опыт в данном вопросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.09.2016, 20:25 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
PB_guest Подскажите, может у кого есть опыт в данном вопросе. BSTR это не null-terminated string тынц . ... |
|||
:
Нравится:
Не нравится:
|
|||
19.09.2016, 23:02 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
Локшин МаркPB_guestПодскажите, может у кого есть опыт в данном вопросе. BSTR это не null-terminated string тынц . Так пробовал инициализировать перед функцией переменную: ls_strOldActiveProfileID = Space(250) Результат тот же. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 09:14 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
PB_guest, Попробуйте вызывать так (в добавок к space()): Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 19:20 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
Anatoly Moskovsky, И это пробовал. Ошибка та же самая выскакивает. Не пойму вообще чего ему не хватает. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 22:21 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
PB_guestПытаюсь настроить печать в PDF-принтер под названием NovaPDF... А собственно печать чего? Может в РВ это уже решено? Или почему именно NovaPDF, есть ведь другое? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 22:31 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
AIS, Печать DW в PDF. Есть уже реализованная печать DW в PDF на "Bullzip PDF Printer", но данный метод не устраивает и скоростью и периодическими падениями, когда необходимо сохранить огромное количество данных, когда размер файла PDF получается больше 2Гб. Сохранение с использованием novaPDF работает и быстрее, и стабильней. Но при простой печати выскакивает окно, в котором необходимо ввести имя файла, куда сохранять. Чтобы программным способом подставить имя файла и необходимы все эти манипуляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 22:58 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
Как вариант - задать постоянное имя файла и место, а потом переименовывать и перемещать ... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2016, 16:12 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
spas2001, Проблема в том, что при сохранении(печати) в PDF выскакивает окно самой программы novaPDF, в котором необходимо ввести имя файла, в которое "напечатается" DW. Смысл проблемы в том, чтобы не дать этому окну выскочить. o.GetActiveProfile2(ls_strOldActiveProfileID); это не единственная функция, на которой происходит падение программы. Вызов любой другой функции, в которой данные должны прийти из ref-переменной, также "падают". ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2016, 22:20 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
Может падение РВ связана с путем к файлу - в пути есть пробелы и/или кириллица? Или в ls_PROFILE_NAME надо указывать полный путь + имя файла? И ещё. Может программу надо вызывать с какими-то параметрами, например, где задается файл по умолчанию и не выводится окно для выбора такого файла? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2016, 09:06 |
|
ref-переменные в oleobject
|
|||
---|---|---|---|
#18+
AIS, При вызове функции o.GetActiveProfile2(ls_strOldActiveProfileID) переменная ls_strOldActiveProfileID вообще пустая. Именно в эту переменную должны прийти данные из функции. Программа для запуска никак не вызывается. Это просто настроенный виртуальный принтер PDF? в который происходит печать dw - dw.print(false, false). Вот мой пост - http://www.sql.ru/forum/941829/printer-adobe-distiller-na-x64?mid=12580129&hl=bullzip#12580129 который у меня работает... и нужно то же самое сделать, но на novaPDF. Думаю, придется на C обертку написать. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2016, 11:49 |
|
|
start [/forum/topic.php?fid=15&fpage=7&tid=1335200]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 250ms |
total: | 408ms |
0 / 0 |