Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2016, 16:05   #1
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию генерация PDF 417

Добрый день. Может у кого есть dll для генерация PDF 417 или PAS

гуглом пользовался нашёл кучу чего, но я не хочу отдельный компонент ибо потом его таскать везде.
нашёл DLL ТУТ, но не смог сообразить как это переделать в delphi.

Нашёл BcsPDF417.7z это , юзаю так

Код:
var
 h:Cardinal;
  decompose: function(v:WideString):WideString;stdcall;
 res:WideString;
begin
    h := LoadLibrary('cruflBCS.dll');
       if h>0 then
       begin
       @decompose := GetProcAddress(h,'BCSPDF417Encode');
        if @decompose <> nil then
        begin
          res:=decompose('gfhfgh fghgf');
          Label1.Caption := res;
        end;
       end;
но res всегда = '';
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 23.05.2016, 16:29   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А там резве не
Код:
BCSPDF417Encode(char* strToEncode, char& strOutput);
http://www.barcode-soft.com/barcodevcdll.aspx
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.05.2016, 05:48   #3
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

я в С не силён, как понял char* это аналог Pchar

теперь возвращает "nil(#0)"

по ссылке Аватара есть код

Код:
typedef int (*LPFNDLLFUNC)(char*, char*);
char modulePath[] = "cruflbcs.dll";
HINSTANCE m_hLibInstance = LoadLibrary( modulePath );
if (m_hLibInstance != NULL)
{
lpfnDllFunc = (LPFNDLLFUNC)GetProcAddress(m_hLibInstance, "BCSPDF417Encode");
if (!lpfnDllFunc)
FreeLibrary(m_hLibInstance);
else
nReturn = lpfnDllFunc(pszInpara, szReturn);
}
FreeLibrary(m_hLibInstance);
сделал так
Код:
var
 h:Cardinal;
  //decompose: function(v : PChar):Integer;stdcall;
  decompose: function (ain,AOut: PCHar): Cardinal ;stdcall;
 ain:PChar;
 AOut: PCHar;
 i:Cardinal;
begin
    h := LoadLibrary('cruflBCS.dll');
       if h>0 then
       begin
       @decompose := GetProcAddress(h,'BCSPDF417Encode');
        if @decompose <> nil then
        begin
           i:=2;
           ain:='';
           AOut:='';
          ain:=PChar('gfhfghf ghgf fhfghghf fghfghgfhf fhgfhfghfgh');
          i:=decompose(ain,AOut);
         // Label1.Caption := res;
        end;
       end;
i=0 значит ошибок нет..как я понял, но AOut=''

Понимаю что делать что то не так... буду признателен если кто подскажет.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось BARNEY; 24.05.2016 в 06:29.
BARNEY вне форума Ответить с цитированием
Старый 24.05.2016, 08:20   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А так
Код:
var AOut: array of Char;
...
      SetLength(AOut,1000);
      res:=decompose('gfhfgh fghgf', Addr(AOut[0]));
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.05.2016, 10:09   #5
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

И так массив пустой..... точнее весь '#0'
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 24.05.2016, 10:20   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

BCSPDF417Option - может предварительно это нужно? Еще BCSMicroPDF417Encode есть. Чего там фиг знает, первый раз вижу эту dll
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.05.2016, 12:15   #7
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

По С++ ному примеру не надо. MicroPDF это другой вид штрихкода.

нашёл источник этой dll

http://www.barcodesoft.com/delphi-barcode.aspx

если зарегить и подключить как там написано ..всё прекрасно генерит,
делать это на каждом рабочем месте не хочется.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось BARNEY; 24.05.2016 в 15:24.
BARNEY вне форума Ответить с цитированием
Старый 27.05.2016, 15:31   #8
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Вынужден Вас огорчить: без регистрации DLL приведённый код на С всё равно не работает. Так что без регистрации на каждом рабочем месте, похоже, не обойтись.
Black Fregat вне форума Ответить с цитированием
Старый 27.05.2016, 17:41   #9
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

напишите батник который будет его регить от имени админа и делов то. А как по вашему иные программы устанавливают свои дрова для железа? Принтеры, геймпады и прочее. Выберите как автоматизировать регистрацию до уровня пары кликов и готово.
пишу код не только за печеньки
VIK_aka_TOR вне форума Ответить с цитированием
Старый 31.05.2016, 09:40   #10
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Black Fregat
Жаль, спс за тест.
VIK_aka_TOR
у меня больше 50 машин в области, у которых нет прав админа, нет домена + стоит куча софта по 152 ФЗ который не сильно даёт лазить где хочешь.

А хранить пароль админа на компе пользователя... мягко говоря глупо.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт по конвертированию pdf (ebook) в po4a, и --> new pdf patsev.anton Фриланс 2 05.12.2014 08:16
генерация pdf на php zvezda_t PHP 4 05.08.2010 18:37
Генерация PDF на основе шаблонов zvezda_t PHP 6 03.02.2010 12:35