Автор | Сообщение |
|
| |
Пост N: 1437
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.03.10 09:01. Заголовок: [?] Datecs Ep-60 (SDK)
|
|
|
Ответов - 42
, стр:
1
2
3
All
[только новые]
|
|
|
| |
Пост N: 1486
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.03.10 15:59. Заголовок: Pasha Есть дурацкий..
Pasha Есть дурацкий вопрос. После того как я завершаю программу не нужно ли делать что то типа DllUnload ? Текст программы ANNOUNCE RDDSYS Proc main(nport,speed,cfile) if DTX_PRNOPEN(val(nport),val(speed),.t.)==0 if hb_fuse(cfile)#0 do while !hb_feof() DTX_PRNTEXT(hb_freadln()) hb_fskip() enddo hb_fuse() DTX_PRNPAPERFEED(40) DTX_PRNPApERCUT() endif DTX_PRNCLOSE() ferase(cfile) endif return #pragma BEGINDUMP #include "hbapi.h" #define bool char #include "printing.h" HB_FUNC( DTX_PRNOPEN ) { hb_retnl( PrnOpen( hb_parnl(1), hb_parnl(2), hb_parl(3)) ); } HB_FUNC( DTX_PRNCLOSE ) { hb_retnl( PrnClose() ); } HB_FUNC( DTX_PRNPAPERCUT ) { hb_retnl( PrnPaperCut() ); } HB_FUNC( DTX_PRNPAPERFEED ) { hb_retnl( PrnPaperFeed(hb_parnl(1)) ); } HB_FUNC( DTX_PRNTEXT ) { hb_retnl( PrnText(hb_parc(1)) ); } HB_FUNC( DTX_PRNBARCODE ) { hb_retnl( PrnBarcode(hb_parnl(1), hb_parc(2), hb_parclen(2)) ); } #pragma ENDDUMP
|
|
|
|
| Администратор
|
Пост N: 1382
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.03.10 16:07. Заголовок: Нет, в таком режиме ..
Нет, в таком режиме линковки dll подгружается сразу, вместе с основной программой, и выгружать ее отдельно не надо
|
|
|
|
| |
Пост N: 1487
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.03.10 16:15. Заголовок: Pasha Понял , спас..
Pasha
|
|
|
|
| |
Пост N: 3788
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.01.14 18:01. Заголовок: Dima пишет: implib ..
Dima пишет: цитата: | implib dtxprint.lib Printing.dll |
| А в MinGw что является аналогом Implib ?
|
|
|
|
| moderator
|
Пост N: 769
Зарегистрирован: 06.07.06
|
|
Отправлено: 21.01.14 19:55. Заголовок: Dima пишет: А в Min..
Dima пишет: цитата: | А в MinGw что является аналогом Implib ? |
| http://www.mingw.org/wiki/CreateImportLibraries Если вкратце, то создаем руками текстовый файл ( я буду на примере letocl.dll ) letocl.def: LIBRARY letocl.dll EXPORTS LetoInit LetoExit LetoConnectionNew LetoCloseAll где, начиная с третьей строчки, имена импортируемых функций. А потом запускаем: dlltool -d letocl.def -l libletocl.a
|
|
|
|
| |
Пост N: 3789
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.01.14 20:08. Заголовок: alkresin пишет: где..
alkresin пишет: цитата: | где, начиная с третьей строчки, имена импортируемых функций |
| Понял. Спасибо, а где их взять эти имена ? Нужны все.
|
|
|
|
| moderator
|
Пост N: 770
Зарегистрирован: 06.07.06
|
|
Отправлено: 21.01.14 21:06. Заголовок: Ну, например, борлан..
Ну, например, борландовским impdef: impdef.exe letocl.def letocl.dll
|
|
|
|
| |
Пост N: 3790
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.01.14 21:10. Заголовок: alkresin Спасибо. Н..
alkresin Спасибо. Нарыл как с mingw , вот так c:\mingw\bin\ld --output-def=test.def Printing.dll
|
|
|
|
| |
Пост N: 3791
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.01.14 15:28. Заголовок: Библу собрал а вот с..
Библу собрал а вот со сборкой (Harbour 3.2 + Mingw) засада , хотя нормик собиралось на Xharbour 1.2 + BCC 55 Исходник такой Proc main(nport,speed,cfile) if DTX_PRNOPEN(val(nport),val(speed),.t.)==0 if hb_fuse(cfile)#0 do while !hb_feof() DTX_PRNTEXT(hb_freadln()) hb_fskip() enddo hb_fuse() DTX_PRNPAPERFEED(40) DTX_PRNPApERCUT() *dtx_prntext("{=F2}Блаблабла") endif DTX_PRNCLOSE() ferase(cfile) endif return #pragma BEGINDUMP #include "hbapi.h" #define bool char #include "printing.h" HB_FUNC( DTX_PRNOPEN ) { hb_retnl( PrnOpen( hb_parnl(1), hb_parnl(2), hb_parl(3)) ); } HB_FUNC( DTX_PRNCLOSE ) { hb_retnl( PrnClose() ); } HB_FUNC( DTX_PRNPAPERCUT ) { hb_retnl( PrnPaperCut() ); } HB_FUNC( DTX_PRNPAPERFEED ) { hb_retnl( PrnPaperFeed(hb_parnl(1)) ); } HB_FUNC( DTX_PRNTEXT ) { hb_retnl( PrnText(hb_parc(1)) ); } HB_FUNC( DTX_PRNBARCODE ) { hb_retnl( PrnBarcode(hb_parnl(1), hb_parc(2), hb_parclen(2)) ); } #pragma ENDDUMP И вот что вылазит при сборке Harbour 3.2.0dev (Rev. 18920) Copyright (c) 1999-2013, http://harbour-project.org/ Compiling 'dtx.prg'... Lines 58, Functions/Procedures 1 Generating C source output to 'obj\dtx.c'... Done. dtx.prg: In function 'HB_FUN_DTX_PRNTEXT': dtx.prg:49:5: warning: passing argument 1 of 'PrnText' discards 'const' qualifier from pointer target type [enabled by d efault] In file included from dtx.prg:22:0: c:/hb32mingw/include/printing.h:269:22: note: expected 'char *' but argument is of type 'const char *' dtx.prg: In function 'HB_FUN_DTX_PRNBARCODE': dtx.prg:56:5: warning: passing argument 2 of 'PrnBarcode' discards 'const' qualifier from pointer target type [enabled b y default] In file included from dtx.prg:22:0: c:/hb32mingw/include/printing.h:408:21: note: expected 'char *' but argument is of type 'const char *' obj/dtx.o:dtx.c:(.text+0x13): undefined reference to `PrnText@4' obj/dtx.o:dtx.c:(.text+0x43): undefined reference to `PrnPaperFeed@4' obj/dtx.o:dtx.c:(.text+0x64): undefined reference to `PrnPaperCut@0' obj/dtx.o:dtx.c:(.text+0x84): undefined reference to `PrnClose@0' obj/dtx.o:dtx.c:(.text+0xe2): undefined reference to `PrnOpen@12' obj/dtx.o:dtx.c:(.text+0x15f): undefined reference to `PrnBarcode@12' C:\MinGW\bin\ld.exe: obj/dtx.o: bad reloc address 0x0 in section `.data'
|
|
|
|
| |
Пост N: 3792
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.01.14 16:41. Заголовок: Если собирать с Harb..
Если собирать с Harbour 3.2+ BCC то собирается.........но мне нужно все таки с Mingw Куда копнуть ?
|
|
|
|
| постоянный участник
|
Пост N: 1150
Зарегистрирован: 09.10.06
|
|
Отправлено: 22.01.14 20:30. Заголовок: dlltool -d letocl.de..
dlltool -d letocl.def -l libletocl.a -k
|
|
|
|
|
| |
Пост N: 3793
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.01.14 21:52. Заголовок: Петр пишет: dlltool..
Петр пишет: цитата: | dlltool -d letocl.def -l libletocl.a -k |
| в сборке это не помогло.......... ошибки те же
|
|
|
|
| постоянный участник
|
Пост N: 1151
Зарегистрирован: 09.10.06
|
|
Отправлено: 22.01.14 23:26. Заголовок: Может эта статья че..
Может эта статья чем-то поможет: http://www.mingw.org/wiki/CreateImportLibraries Я, когда-то, вот так библиотеки импортировал :export pexports %ICU_PATH%/bin/%~n1.dll > %~n1.def dlltool --input-def %~n1.def --dllname %~n1.dll --output-lib lib%~n1.a -k ranlib lib%~n1.a exit /b Правда не знаю: pexports еще развивается или нет, в и-нете, наверное, найти можно..
|
|
|
|
| moderator
|
Пост N: 771
Зарегистрирован: 06.07.06
|
|
Отправлено: 23.01.14 08:28. Заголовок: А Dima пишет: obj/d..
А Dima пишет: цитата: | obj/dtx.o:dtx.c:(.text+0x13): undefined reference to `PrnText@4' obj/dtx.o:dtx.c:(.text+0x43): undefined reference to `PrnPaperFeed@4' |
| А в def файле у вас функции как описаны, с этими @4 или просто имена, как я вам предлагал ?
|
|
|
|
| |
Пост N: 3794
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.01.14 09:56. Заголовок: alkresin Просто как..
alkresin Просто как имена. Вот кусочек LIBRARY Printing.dll EXPORTS BarcodeScan BarcodeType2Text MFAuthByKey MFClose MFHaltCard MFIdent MFInit MFRGetSerial MFRead MFRequestCard MFSelectCard MFValueOperation MFWrite MFWriteValue MSProcessFinancialCard MSReadCard PrnBarcode
|
|
|
|
| moderator
|
Пост N: 773
Зарегистрирован: 06.07.06
|
|
Отправлено: 23.01.14 10:08. Заголовок: Попробуйте описать и..
Попробуйте описать их так, как стоит в undefined reference
|
|
|
|
| |
Пост N: 3795
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.01.14 10:20. Заголовок: alkresin пишет: Поп..
alkresin пишет: цитата: | Попробуйте описать их так, как стоит в undefined reference |
| Так и сделал в DEF , пересобрал либу. Все заработало. Странно все это. Спасибо !
|
|
|
|
| |
Пост N: 5419
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.15 11:39. Заголовок: Pasha Паш наверное ..
Pasha Паш наверное вопрос к тебе. Решили этот принтер расшарить по сетке. Пробная печать из винды идет а из программы не в какую. Это у них SDK такой что не позволяет работать по сетке с этим принтером ? PS Хотя как бы и понятно почему не работает из программы , она (с помощью SDK) пишет в порт а тест винды общается с сетевым принтером.
|
|
|
|
| Администратор
|
Пост N: 3382
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.12.15 18:05. Заголовок: Столько лет уже этой..
Столько лет уже этой теме, я и подзабыл к чему она. Да и SDK уже недоступен Просто мысль: если этот принтер расшарен как обычный сетевой принтер, может и печатать на него стоит обычными средствами вывода на принтер windows ?
|
|
|
|
| |
Пост N: 5420
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.15 18:13. Заголовок: Pasha SDK они перел..
Pasha SDK они переложили вот сюда http://www.datecs.bg/en/products/56 Закладка SUPPORT. Сам принтер с последовательным интерфейсом и использует свои спец команды для вывода на печать включая форматирование текста , печать штрих кодов и тд и тп. Собственно принтер для печати чеков. За идею спасибо , нужно обмозговать........жаль принтера нет под рукой живого.
|
|
|
Ответов - 42
, стр:
1
2
3
All
[только новые]
|
|