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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2010, 19:55   #1
matalata
 
Регистрация: 17.11.2009
Сообщений: 4
По умолчанию pax compiler

Привет всем, определяюсь со скриптами, заинтересовался paxcompiler.
Проблема в том, что описание очень куцое.
Если кто работал с paxcompiler, прошу помощи:

1. Можно ли скомпилированный pax-ом код загружать и выполнять на другом компьютере (без перекомпиляции)?

2. В демо-примере RegisterVariable
изменил запись

type
TMyPoint = packed record
x, y: Integer;
end;

на

TMyPoint = packed record
x, y: Integer;
myArrayByte : array [0..10] of byte; //new field
myArrayInt : array [1..10] of integer; //new field
end;

Не могу понять, как зарегистрировать в скрипте поля myArrayByte и myArrayInt.

Пример RegisterVariable:
Цитата:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, PaxCompiler, PaxProgram, PaxRegister;

type
TForm1 = class(TForm)
PaxCompiler1: TPaxCompiler;
PaxPascalLanguage1: TPaxPascalLanguage;
PaxProgram1: TPaxProgram;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

type
TMyPoint = packed record
x, y: Integer;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
H_TMyPoint, H_MyPoint: Integer;
MyPoint: TMyPoint;
I: Integer;
begin
MyPoint.X := 60;
MyPoint.Y := 23;

PaxCompiler1.Reset;
PaxCompiler1.RegisterLanguage(PaxPa scalLanguage1);

// register host-defined type
H_TMyPoint := PaxCompiler1.RegisterRecordType(0, 'TMyPoint');
PaxCompiler1.RegisterRecordTypeFiel d(H_TMyPoint, 'X', _typeINTEGER);
PaxCompiler1.RegisterRecordTypeFiel d(H_TMyPoint, 'Y', _typeINTEGER);

// register host-defined variable
H_MyPoint := PaxCompiler1.RegisterVariable(0, 'MyPoint', H_TMyPoint, @MyPoint);

PaxCompiler1.AddModule('1', PaxPascalLanguage1.LanguageName);
PaxCompiler1.AddCode('1', 'begin');
PaxCompiler1.AddCode('1', ' MyPoint.Y := 8;');
PaxCompiler1.AddCode('1', 'end.');

if PaxCompiler1.Compile(PaxProgram1) then
begin
PaxProgram1.Run;
ShowMessage(IntToStr(MyPoint.Y));
end
else
for I:=0 to PaxCompiler1.ErrorCount do
ShowMessage(PaxCompiler1.ErrorMessa ge[I]);
end;

end.
У нас принято оформлять код специальным тэгом - при помощи кнопочки "#".
Только...
И не значком #.
И не РНР-кодом.
И не значком цитаты.
И не собственными "ручками".
Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
Модератор

Последний раз редактировалось mihali4; 30.03.2010 в 00:40.
matalata вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где используется Tini C Compiler? Роман Радер Софт 7 08.01.2010 00:19
С++ compiler arcahn Общие вопросы C/C++ 3 07.08.2009 23:06
Project Options->Compiler->Code Generation->Codepage megachuhancer Общие вопросы Delphi 1 03.08.2009 14:44