Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi XE5 JCL и JVCL, Ошибки при установке JVCL 
V
    Опции темы
Juju
Дата 27.9.2013, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 26.10.2006

Репутация: 1
Всего: 1



ОС: Windows 7 x64
Версия Delphi: XE5
jcl: jcl-2.5.0.4957
jvcl: 2013-09-26 (пробовал и более ранние и стабильные - без разницы)

Проблема: устанавливаю jcl. Все проходит в штатном режиме. Перехожу к установке jvcl... на этапе установки вылетают ошибки:
user posted image

Сами файлы на которые "ругается" установщик: 
JvRichEdit.pas
JvDynControlEngineJVCL.pas
Конечно я обратил внимание на то, что JCL и JVCL пакеты не совместимы, но я ставил их разные версии и в разных комбинациях... ошибки те же. Возможно надо исправить сами исходники?
Помогите решить проблему. 
(Даже EhLib для XE5 нашел... а на таких всегда непроблемных компонентах как JEDI застопорился).

Это сообщение отредактировал(а) Juju - 27.9.2013, 11:08
PM MAIL   Вверх
MetalFan
Дата 27.9.2013, 11:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



Juju, ну так найти строчки в JvRichEdit.pas, на которые ругается и поправить Integer на NativeUInt


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Juju
Дата 27.9.2013, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 26.10.2006

Репутация: 1
Всего: 1



Строки на которые ругается:
Код

6002 pfnCallBack := StreamSave;
6054 pfnCallBack := StreamLoad;
6078 EditStream.pfnCallback := StreamLoadW;
6095 EditStream.pfnCallback := StreamLoadW;
6103 EditStream.pfnCallback := StreamLoad;

т.е. на значение возвращаемые функциями:
StreamSave;
StreamLoad;
StreamLoadW;

Вот они:
Код

function StreamLoadW(dwCookie: {$IFDEF COMPILER19_UP}DWORD_PTR{$ELSE}Longint{$ENDIF}; pbBuff: PByte;
  cb: Longint; var pcb: Longint): Longint; stdcall;
begin
  Result := NoError;
  try
    pcb := TCookie(dwCookie).LoadW(pbBuff, cb);
  except
    Result := ReadError;
  end;
end;

function StreamLoad(dwCookie: {$IFDEF COMPILER19_UP}DWORD_PTR{$ELSE}Longint{$ENDIF}; pbBuff: PByte;
  cb: Longint; var pcb: Longint): Longint; stdcall;
begin
  Result := NoError;
  try
    pcb := TCookie(dwCookie).Load(pbBuff, cb);
  except
    Result := ReadError;
  end;
end;

function StreamSave(dwCookie: {$IFDEF COMPILER19_UP}DWORD_PTR{$ELSE}Longint{$ENDIF}; pbBuff: PByte;
  cb: Longint; var pcb: Longint): Longint; stdcall;
var
  Converter: TJvConversion;
begin
  Result := NoError;
  Converter := TJvConversion(dwCookie);
  try
    pcb := 0;
    if Converter <> nil then
      pcb := Converter.ConvertWrite({$IFNDEF COMPILER12_UP}PAnsiChar{$ENDIF !COMPILER12_UP}(pbBuff), cb);
  except
    Result := WriteError;
  end;
end;


Когда в процедурах возвращаемый тип заменил с Longint; на NativeUInt; при повторной пробе инсталлировать выдало ошибки в тех же строках, только наоборот:
user posted image
т.е. было:
Код

Incompatible types: 'NativeUInt' and 'Integer'

а стало:
Код

 Incompatible types: 'Integer' and 'NativeUInt'


Это сообщение отредактировал(а) Juju - 27.9.2013, 18:48
PM MAIL   Вверх
CynicRus
Дата 27.9.2013, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



{$IFDEF COMPILER19_UP} - в Jedi такого много, добавь свой компилятор в .inc файл и всё встанет.
PM MAIL   Вверх
Juju
  Дата 28.9.2013, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 26.10.2006

Репутация: 1
Всего: 1



Цитата(CynicRus @  27.9.2013,  21:02 Найти цитируемый пост)
{$IFDEF COMPILER19_UP} - в Jedi такого много, добавь свой компилятор в .inc файл и всё встанет. 
 
Спасибо за идею. Пришлось дописать в компиляторе почти каждую процедуру компиляции. Все там заканчивалось на XE4. 
Теперь все компоненты: EhLib, JCL, JVCL работают под XE5
Еще раз спасибо. Вопрос решен.
PM MAIL   Вверх
Juju
Дата 28.9.2013, 14:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 26.10.2006

Репутация: 1
Всего: 1



Для людей, которые столкнулись с подобной проблемой и нет времени разбираться в недочетах разработчиков, которые и так выкладывают бесплатно такие полезные компоненты.
Для безошибочной установки компонентов JCL JVCL на Delphi XE5
0) Закрываем RAD Studio XE5
1) Скачиваем последние версии(стабильные или ежедневные, как нравится)
2) Устанавливаем JCL (от имени администратора)
3) Открываем папку с компилятором: ..jcl\source\include\jedi
4) Заменяем файл jedi.inc на этот jedi.inc
5) Устанавливаем JVCL(от имени администратора)
6) Все должно работать

Прорверялся на версиях:
jcl-2.5.0.4959
jcl-2.5.0.4958
jcl-2.5.0.4957
jcl-2.5.0.4956
JVCL3-2013-09-28
JVCL3-2013-09-27
JVCL3-2013-09-26

Это сообщение отредактировал(а) Juju - 28.9.2013, 14:45
PM MAIL   Вверх
РЮХ
Дата 7.10.2013, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Поставил пробную Delphi XE5, не могу поставить Jvcl.
Пишет 
[Window Title]
..\bin\JediInstaller.exe

[Content]
Не удается найти "..\bin\JediInstaller.exe". Проверьте, правильно ли указано имя и повторите попытку.

[ОК]
PM MAIL   Вверх
CynicRus
Дата 8.10.2013, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



Цитата(РЮХ @  7.10.2013,  21:52 Найти цитируемый пост)

Поставил пробную Delphi XE5, не могу поставить Jvcl.
Пишет 
[Window Title]
..\bin\JediInstaller.exe

[Content]
Не удается найти "..\bin\JediInstaller.exe". Проверьте, правильно ли указано имя и повторите попытку.

[ОК]


Открой проект JediInstaller, собери руками из среды, апосля запусти оттуда, куда собрал.

Это сообщение отредактировал(а) Poseidon - 8.10.2013, 18:34
PM MAIL   Вверх
РЮХ
Дата 9.10.2013, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Цитата(CynicRus @  8.10.2013,  17:02 Найти цитируемый пост)
Открой проект JediInstaller, собери руками из среды, апосля запусти оттуда, куда собрал.

[dcc32 Error] JclSysUtils.pas(2763): E2033 Types of actual and formal var parameters must be identical
2763:  if not ReadFile(PipeInfo.PipeRead, PipeInfo.Buffer[0], BufferSize, NullDWORD^, @Overlapped) then
PM MAIL   Вверх
CynicRus
Дата 10.10.2013, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



Ну возьми же версию посвежее с ихнего git или svn. У тебя баг который ещё в мае починили.
PM MAIL   Вверх
РЮХ
Дата 10.10.2013, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Все равно что-то я туплю.
Скачал дневные сборки. Собрал JediInstaller, вышел, запустил от админа (вин 8), все вроде стало.
Запускаю дельфи, там начинают лесть ошибки... Причем для Bpl в настройках установки jvc указана эта папка, только там появилась win64 и больше ничего.

[Window Title]
Error

[Content]
Can't load package C:\Users\Public\Documents\RAD Studio\Bpl\JclBaseExpert190.bpl.
Не найден указанный модуль.
Do you want to attempt to load this package the next time a project is loaded?

[Yes] [No]

и т.д.
PM MAIL   Вверх
CynicRus
Дата 11.10.2013, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



Сначала ставиться JCL, апосля - JVCL.
PM MAIL   Вверх
РЮХ
Дата 11.10.2013, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Ну так 
[Window Title]
Error

[Content]
Can't load package C:\Users\Public\Documents\RAD Studio\Bpl\JclBaseExpert190.bpl.
Не найден указанный модуль.
Do you want to attempt to load this package the next time a project is loaded?

[Yes] [No]

и еще 8 штук подобных вылазит после установки JCL (скомпилированного инсталятора)  и попытки установить JVCL батником.

а инсталятор JVCL не компилируется, выдает ошибку [dcc32 Fatal Error] JvJVCLUtils.pas(47): F1026 File not found: 'C:\jedi\jvcl\resources\JclBase.dcu'

Это сообщение отредактировал(а) РЮХ - 11.10.2013, 16:38
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1412 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.