Clan [Kd]

Need For Kill

and

Clan [Kd]

  
       \Статьи

DelphiX для Delphi6:

То что написано синим шрифтом это надо прописывать, а то что белым это надо исправить на что там написано. 

Эта статья покажет вам, как переделать DelphiX под Delphi 6.0. Этот процесс займёт 15-20 минут. 

Шаг 1: 

После распаковки DelphiX в любую директорию, запустите Delphi6. Не пытайтесь запустить Install_for?.exe или другие виды установки. 

Шаг 2: 

Зайдите в File...Open: DelphiX_for5.dpk и Delphi 6 преобразует пакет для вас. 



Сохраните пакет как DelphiX_for6.dpk. 

Шаг 3: 

Нажмите кнопку Install. Компилятор найдёт ошибки. Все они в файле DXRender.pas. 
( То что сказано ниже это не обязательно делать )
Вот фрагмент: 

var
NilGUID : TGUID absolute 0;


: Надо изменить на : 

var
NilGUID : TGUID;


Шаг 4: 

Первый тип ошибок - несовпадение ординат в машинном коде. Где-то 40 - 50 Ошибок такого типа. 



Вот как их исправить... 

mov eax,Dest; add eax,TDXRMachine_Color.R+1 // Плохой сегмент
: изменить на : 

mov eax,Dest; add eax,BYTE(TDXRMachine_Color.R+1) // Хороший сегмент
Вам это придётся делать при каждой ссылке ASM на TDXRMachine_Color. Вы можете заменять эти строки при помощи Search and Replace. 

Шаг 5: 

Второй тип ошибок нам придётся корректировать, они связаны с синтаксисом ассемблера. Есть 10 - 20 ошибок этого типа, и все они происходят рядом с _AddTable и _SubTable. 

Вот пример как исправить их... 

movzx edx,byte [offset _AddTable+edx+ebx]
: Изменить так : 

movzx edx,byte [offset (_AddTable+edx+ebx)]
В конце компилятор покажет одно предупреждение и одну фатальную ошибку. 

Шаг 6: 

И последняя ошибка из-за DsgnIntf. 



Есть два пути решения этой проблемы : 

Без IDE редактирования: 

Переделайте DXReg.pas следующим образом: 

unit DXReg;
interface

uses
Windows, SysUtils, Classes, Forms, Dialogs, Graphics, TypInfo,
DXDraws, DXSounds, DIB, Wave, DXInput, DXPlay, DXSprite,
DXClass;

procedure Register;

implementation
const
SNone = '(None)';
SSettingImage = '&Image...';
SSettingWave = '&Wave...';
SDXGFileFilter = 'DXG file(*.dxg)|*.dxg|All files(*.*)|*.*';
SDXGOpenFileFilter = 'DXG file(*.dxg)|*.dxg|Bitmap file(*.bmp)| *.bmp|All files(*.*)|*.*';
SDXWFileFilter = 'DXW file(*.dxw)|*.dxg|All files(*.*)|*.*';
SDXWOpenFileFilter = 'DXW file(*.dxw)|*.dxw|Wave file(*.wav)| *.wav|All files(*.*)|*.*';
SSinglePlayer = '&Single player';
SMultiPlayer1 = 'Multi player &1';
SMultiPlayer2 = 'Multi player &2';
SOpen = '&Open...';
SSave = '&Save..';

procedure Register;
begin
RegisterComponents('DelphiX',
[TDXDraw,
TDXDIB,
TDXImageList,
TDX3D,
TDXSound,
TDXWave,
TDXWaveList,
TDXInput,
TDXPlay,
TDXSpriteEngine,
TDXTimer,
TDXPaintBox]);
end;
end.


С этим кодом вы не сможете использовать редакторы, которые идут вместе с DelphiX. 

С редактированием IDE (Экспертам): 
1) В DXReg.pas измените в USES 'DsgnIntf' на 'DesignIntf'. 
2) Добавить 'DesignEditors' в uses и в unit где понравится. 
3) Добавить 'DesignIDE' в НЕОХОДИМОМ разделе пакета. 

 Статью написал не Knight[Kd] он её просто скачал с одного сайта.

<!-- ><!-- "><!-- '><!-- --> </div> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <!-- copyright (i1) --><div align="center"><a href="http://www.ucoz.ru/" title="Создать сайт бесплатно"><img style="margin:0;padding:0;border:0;" alt="Hosted by uCoz" src="http://s201.ucoz.net/img/cp/5.gif" width="80" height="15" title="Hosted by uCoz" /></a><br /></div><!-- /copyright --> </body> </html>