Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

Delphi 10 проблемы с компиляцией SysInit.pas   Найти похожие ветки 

 
XProger ©   (2006-05-12 20:11) [0]

Вчера решил попробовать скомпилировать вышеуказанный модуль в dcu, для последующей замены стандартного. В итоге получил сообщение об ошибке:
SysInit.pas(1) Fatal: E2272 Cannot use reserved unit name "SysInit"
Причём, System.pas компилируется без проблем. Я так понимаю, что это защита от изменения этих строк
{$IFDEF TRIAL_EDITION}
Evaluation name "This module was compiled with an evaluation version of Borland Delphi",            // do not localize
{$ENDIF}
 Copyright name "Portions Copyright (c) 1983,2002 Borland Software Corporation";                     // do not localize

в SysInit.pas? :)

Вопрос: существует ли возможность компилирования (или отключения ;) SysInit.pas в Delphi последней версии (в составе BDS 2006)?


 
Thaddy   (2006-05-12 23:02) [1]

No.

Sysinit.pas is actually *used* by system.pas.

In the trial editions you can"t do that.

btw: doesn"t belong here.

btw2: kol works only in PAS_VERSION mode in D 10 (as I explained before)
In that case there are no real problems.


 
XProger ©   (2006-05-13 02:31) [2]

Thaddy, thx :)

make.bat
dcc32 prog.dpr -m -y
dcc32 prog.dpr


Оказывается, компилятор Delphi 10, при компиляции dpr автоматически компилирует в dcu System.pas и SysInit.pas лежащие рядом с ним :)

Проблема решена.

P.S.
 Delphi 10 компилит exe размером в 4 кб (3.5 без RCData :)


 
Thaddy   (2006-05-13 10:08) [3]

Yes, only with dcc32.exe

and the size is with ALL 32 bit delphi versions when you tweak system ;)


 
Vladimyr ©   (2006-05-16 10:05) [4]

Можно пояснить для новичков, как скомпилировать системные модули для замены
(или выложить изменённые dcu, как это делалось для Delphi 5 и 7)?


 
XProger ©   (2006-05-17 16:48) [5]

Есть 4 файла:
SysInit.pasunit SysInit;

interface

var
 TlsIndex: Integer = -1;      
 TlsLast: Byte;
 
const
 PtrToNil: Pointer = nil;

implementation

end.

System.pasunit System;

interface
 
procedure _HandleFinally;
procedure _InitExe;
procedure _InitLib(Context: Pointer);
procedure _halt0;
procedure ExitProcess(Code: Cardinal); stdcall; external "kernel32.dll";

type
 TGUID = record end;
 
implementation

procedure _HandleFinally;
asm
end;

procedure _InitExe;
asm
end;

procedure _InitLib(Context: Pointer);
asm
LEAVE
RET 12
end;

procedure _halt0;
begin
 ExitProcess(0);
end;

end.

prog.dprprogram prog;

begin
end.

prepare.batdcc32 prog.dpr -m -y
dcc32 prog.dpr


Кидаем к ним компилятор (dcc32.exe) и запускаем prepare.bat


 
Vladimyr ©   (2006-05-18 23:58) [6]

Шаманство какое-то! :)
Ну ладно, попробую (как только bds2006 докачаю).
Спасибо.


 
LAutour   (2006-05-19 06:34) [7]

Как бы еще поставить этот bds2006 не имея .Net SDK?


 
LAutour   (2006-05-19 07:37) [8]

Хм. Облегченный до 70Мб bds2006.
http://warezteam.ws/2006/04/03/print:page,1,Borland_Delphi_2006_Lite_3.0.html



Страницы: 1 вся ветка

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.087 c
2-1169450606
ТехникПТО
2007-01-22 10:23
2007.02.11
Paradox 7 не понимает русский!!


15-1169202638
DeadMeat
2007-01-19 13:30
2007.02.11
Литература по SQL


2-1169739113
Veche
2007-01-25 18:31
2007.02.11
Как послать кобинацию клавишь?


3-1164098174
RomanH
2006-11-21 11:36
2007.02.11
Замысловатый SQL-запрос


2-1169666117
aleko
2007-01-24 22:15
2007.02.11
по принтеру