Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / что включить в XE5 чтобы он заработал с OLE? / 6 сообщений из 6, страница 1 из 1
01.04.2021, 21:01
    #40058962
Snickbw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
Ситуация: Решил переписать на XE5 старую программку (написанную в D7-BDS2010-XE2-XE5) работы с ФР ШТРИХМ (через OLE).
Пример под спойлером.

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
unit UnitPunktMain;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, ComObj, Vcl.Buttons;

type
  TFMain = class(TForm)
    SpeedButton1: TSpeedButton;
    procedure SpeedButton1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
end;

var
  FMain: TFMain;

implementation

{$R *.dfm}

procedure TFMain.SpeedButton1Click(Sender: TObject);
var ss:String;
  ECR:OleVariant;//ККМ
begin
      try
        ECR := CreateOleObject('AddIn.DrvFR');
        ECR.Password:=30;
        if (ECR.GetECRStatus=0)and
           (ECR.GetShortECRStatus=0)
        then
          begin
            ss:='';
            ss:=ss+'Режим: '+inttostr(ECR.ECRMode)+' '+(ECR.ECRModeDescription);
            ss:=ss+#10+#13;
            ss:=ss+'Серийный номер:'+inttostr(ECR.SerialNumber);
            Application.MessageBox(PWideChar(ss), PChar('Статус ФР'), MB_ICONINFORMATION + MB_OK);
          end
        else
          begin
            MessageDlg(' Установить соединение с ФР не удалось. ',mtError,[mbClose],0);
          end;
      finally
        ECR := 0;
      end;
end;

end.



Проблема: новый проект в XE5 запускается без ошибок, но данных с OLE не получает. Если этот же код запустить в старом проекте (откомпилированном в этом же XE5) - OLE нормально отвечает. Я так понимаю, надо где-то что-то вкл/откл в настройках project, но вот что?
Вопрос: Как заставить XE5 работать с OLE?
...
Рейтинг: 0 / 0
01.04.2021, 23:23
    #40058975
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
По умолчанию в новых проектах экзешники складываются в "...\Win32\Debug" -- мог потеряться какой-нибудь конфиг для подключения или dll-библиотека.
...
Рейтинг: 0 / 0
01.04.2021, 23:25
    #40058976
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
Snickbw
Я так понимаю, надо где-то что-то вкл/откл в настройках project, но вот что?
Неправильно понимаете. Нет такой настройки. Ищите дополнительный код инициализации объекта
...
Рейтинг: 0 / 0
02.04.2021, 09:05
    #40059000
Snickbw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
_Vasilisk_
Ищите дополнительный код инициализации объекта

Методом тыка выяснил, что что-то находиться в неродном для проекта 2кБ файле ресурсов. С ним OLE отвечает, без него нет. Буду пробовать выяснить что находиться внутри этого дополнительного .res файла.
...
Рейтинг: 0 / 0
02.04.2021, 09:45
    #40059008
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
Snickbw
Буду пробовать выяснить что находиться внутри этого дополнительного .res файла.

Это в 99% включается в ресурсы во время компиляции и это можно просто перенести в новый проект без проблем.
Либо Resource explorer поможет.
...
Рейтинг: 0 / 0
02.04.2021, 11:28
    #40059040
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что включить в XE5 чтобы он заработал с OLE?
Snickbw
Буду пробовать выяснить что находиться внутри этого дополнительного .res файла.
Может там лицензионный ключ?
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / что включить в XE5 чтобы он заработал с OLE? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]