Автор | Сообщение |
|
| |
Пост N: 1437
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.03.10 09:01. Заголовок: [?] Datecs Ep-60 (SDK)
|
|
|
Новых ответов нет
, стр:
1
2
3
All
[см. все]
|
|
|
| Администратор
|
Пост N: 1343
Зарегистрирован: 23.05.05
|
|
Отправлено: 19.03.10 09:19. Заголовок: Надо написать модуль..
Надо написать модуль с wrapper-функциями: #include "hbapi.h" #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_PRNTEXT ) { hb_retnl( PrnText(hb_parc(1)) ); } HB_FUNC( DTX_PRNBARCODE ) { hb_retnl( PrnBarcode(hb_parnl(1), hb_parc(2), hb_parclen(2)) ); } и так для каждой функции собирать программу с этим модулем, и с printing.lib
|
|
|
|
| |
Пост N: 1438
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.03.10 09:24. Заголовок: Pasha Спасибо больш..
Pasha Спасибо большое !!!!!!! Буду пробовать.
|
|
|
|
| |
Пост N: 1462
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 09:33. Заголовок: Pasha Начал пробова..
Pasha Начал пробовать. Исходник Proc main if dtx_propen(4,57600,.t.)==0 dtx_prntext("Блаблабла") dtx_prnclose() endif return #pragma BEGINDUMP #include "hbapi.h" #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_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 Во время сборки получаю вот такую лажу , что делать ? Building object module for 'obj\TEST.c' using C compiler 'BCC32' as defined in 'c:\x\bin\harbour.cfg'... Exec: BCC32 -c -D__EXPORT__ -Ic:\x\include -d -Lc:\x\lib -oobj\TEST.obj obj\TEST.c Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland obj\TEST.c: Error E2139 printing.h 116: Declaration missing ; Error E2238 printing.h 117: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 117: Declaration missing ; Error E2238 printing.h 118: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 118: Declaration missing ; Error E2238 printing.h 119: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 119: Declaration missing ; Error E2238 printing.h 120: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 120: Declaration missing ; Error E2238 printing.h 121: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 121: Declaration missing ; Error E2238 printing.h 122: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 122: Declaration missing ; Error E2238 printing.h 123: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 123: Declaration missing ; Error E2238 printing.h 124: Multiple declaration for 'bool' Error E2344 printing.h 116: Earlier declaration of 'bool' Error E2139 printing.h 124: Declaration missing ; Error E2228 printing.h 124: Too many error or warning messages *** 26 errors in Compile *** Done. Deleting: "obj\TEST.c" Done. typedef struct PRINTER_INFORMATION { char name[23]; int printer; int fwver; int langver; int pagewidth; int maxlogoheight; int maxlogosize; int feedlines; bool irda; // 116 строка Printing.h bool msr; bool msr3track; bool katakana; bool shiftjis; bool fahrenheit; bool bluetooth; bool firmwareupdate; bool korean; bool blackmark; bool barcodereader; bool usba; bool usbb; bool sw1; bool sw2; bool sw3; bool sw4; bool sw5; bool sw6; bool sw7; bool sw8; bool sw9; bool sw10; bool sw11; bool sw12; bool sw13; bool sw14; bool sw15; bool sw16; bool sw17; bool sw18; bool sw19; bool sw20; bool universalreader; }PRINTER_INFORMATION;
|
|
|
|
| Администратор
|
Пост N: 1365
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 09:54. Заголовок: там используется тип..
там используется тип bool, который bcc не знает. Надо перед строкой #include "printing.h" вставить строку typedef unsigned char bool; я думаю, unsigned char это и есть bool. Во всяком случае, в паскалевском модуле это тип Boolean
|
|
|
|
| |
Пост N: 1463
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 09:57. Заголовок: Сделал так #includ..
Сделал так #include "hbapi.h" typedef unsigned char bool; #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_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 Теперь получаю следующее Error E2040 printing.h 194: Declaration terminated incorrectly Error E2040 printing.h 210: Declaration terminated incorrectly Error E2040 printing.h 223: Declaration terminated incorrectly Error E2040 printing.h 270: Declaration terminated incorrectly Error E2040 printing.h 279: Declaration terminated incorrectly Error E2040 printing.h 287: Declaration terminated incorrectly Error E2040 printing.h 305: Declaration terminated incorrectly Error E2040 printing.h 318: Declaration terminated incorrectly Error E2040 printing.h 335: Declaration terminated incorrectly Error E2040 printing.h 355: Declaration terminated incorrectly Error E2040 printing.h 368: Declaration terminated incorrectly Error E2040 printing.h 382: Declaration terminated incorrectly Error E2040 printing.h 409: Declaration terminated incorrectly 194 строка extern "C" int __stdcall PrnOpen(int port, int speed, bool hardware);
|
|
|
|
| Администратор
|
Пост N: 1366
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 10:04. Заголовок: можно по-другому, пр..
можно по-другому, просто поставить #define bool char
|
|
|
|
| |
Пост N: 1464
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 10:08. Заголовок: Pasha пишет: #defin..
Pasha пишет: Где это прописать ? Если прописывать вместо typedef unsigned char bool; тогда при сборке получаю Error E2040 TEST.PRG 10: Declaration terminated incorrectly
|
|
|
|
| |
Пост N: 1465
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 10:31. Заголовок: Dima пишет: Где это..
Dima пишет: Разобрался. Думал что закоментарил *typedef unsigned char bool; Но все равно Dima пишет: цитата: | Error E2040 printing.h 194: Declaration terminated incorrectly Error E2040 printing.h 210: Declaration terminated incorrectly Error E2040 printing.h 223: Declaration terminated incorrectly Error E2040 printing.h 270: Declaration terminated incorrectly Error E2040 printing.h 279: Declaration terminated incorrectly Error E2040 printing.h 287: Declaration terminated incorrectly Error E2040 printing.h 305: Declaration terminated incorrectly Error E2040 printing.h 318: Declaration terminated incorrectly Error E2040 printing.h 335: Declaration terminated incorrectly Error E2040 printing.h 355: Declaration terminated incorrectly Error E2040 printing.h 368: Declaration terminated incorrectly Error E2040 printing.h 382: Declaration terminated incorrectly Error E2040 printing.h 409: Declaration terminated incorrectly 194 строка extern "C" int __stdcall PrnOpen(int port, int speed, bool hardware); |
|
|
|
|
|
| Администратор
|
Пост N: 1367
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 10:38. Заголовок: Похоже, printing.h н..
Похоже, printing.h надо использовать в режиме c++ Те есть, создать модуль xxx.cpp, и собирать его компилятором bcc с параметром -P
|
|
|
|
| Администратор
|
Пост N: 1368
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 10:39. Заголовок: Можно, конечно, заме..
Можно, конечно, заменить во всем тексте extern "C" на extern
|
|
|
|
| |
Пост N: 1466
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 10:47. Заголовок: Pasha пишет: Можно,..
Pasha пишет: цитата: | Можно, конечно, заменить во всем тексте extern "C" на extern |
| Заменил , но теперь Error Printing.lib contains invalid OMF record ,type 0x21 (possibly COFF)
|
|
|
|
|
| |
Пост N: 1467
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 10:51. Заголовок: Допер ;) implib dtxp..
Допер ;) implib dtxprint.lib Printing.dll Принтер печатает :) Павел спасибо большое !!!!!!!!!!!!!!!!
|
|
|
|
| Администратор
|
Пост N: 1369
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 10:52. Заголовок: Дошли до линковки. Л..
Дошли до линковки. Линкер поперхнулся либой И это поборем :) если либа не линкуется, то сделаем ее сами командой: implib printing.lib printing.dll
|
|
|
|
| Администратор
|
Пост N: 1370
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 10:52. Заголовок: У дураков мысли сход..
У дураков мысли сходятся :)
|
|
|
|
| |
Пост N: 1468
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 10:56. Заголовок: Павел а как убрать и..
Павел а как убрать из линковки библы , что бы все собралось Не нужны следующие dbfntx.lib dbffpt.lib hsx.lib hbsix.lib Хотелось бы максимум убрать все не используемые LIB , так как это будет прога которая будет получать на вход параметры и просто печатать на принтере. Запускать ее буду из Clipper
|
|
|
|
| постоянный участник
|
Пост N: 850
Зарегистрирован: 09.10.06
|
|
Отправлено: 23.03.10 12:16. Заголовок: Dima пишет: dbfntx...
Dima пишет: цитата: | dbfntx.lib dbffpt.lib hsx.lib hbsix.lib |
| Как и в Clipper - ANNOUNCE RDDSYS
|
|
|
|
| |
Пост N: 1470
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 12:24. Заголовок: Петр Спасибо !!!..
Петр Спасибо !!!
|
|
|
|
| |
Пост N: 1471
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 13:28. Заголовок: Что то застрял на ро..
Что то застрял на ровном месте Программу вызываю из командной строки с параметрами Dtx 4 57600 test.txt Кусок исходника Proc main() param nport,speed,cfile ? nport // 4 ? speed // 57600 ? cfile // test.txt if dtx_prnopen(nport,speed,.t.)==0 // не работает * так работает dtx_prnopen(4,57600,.t.)
|
|
|
|
| Администратор
|
Пост N: 1371
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.10 13:41. Заголовок: Dima пишет: if dtx_..
Dima пишет: цитата: | if dtx_prnopen(nport,speed,.t.)==0 // не работает |
| Наверное надо вызывать val(nport), val(speed)
|
|
|
|
| |
Пост N: 1472
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.03.10 13:46. Заголовок: Pasha Блин...........
Pasha Блин.............пойду проветрюсь Спасибо !
|
|
|
Новых ответов нет
, стр:
1
2
3
All
[см. все]
|
|