मैं डेल्फी के लिए एक अच्छा मुफ्त स्क्रिप्टिंग इंजन ढूंढ रहा हूं। मैं एक आवेदन में स्क्रिप्टिंग जोड़ना चाहता हूं ताकि मैं छोटी टेस्ट स्क्रिप्ट लिख सकूं। विशेष रूप से मैं की जरूरत है:क्या डेल्फी के लिए एक अच्छी पटकथा पास्कल जैसी भाषा है?
- पास्कल की तरह वाक्यविन्यास
- वर्तमान (मैं RemObjects पास्कल स्क्रिप्टिंग को देखा, लेकिन यह "अप्रचलित" है एक पोस्टिंग मैंने देखा के अनुसार)।
मुझे मूल भाषा समर्थन की आवश्यकता नहीं है, बस मूल बातें। मैंने यह देखा: https://stackoverflow.com/questions/226135/scripting-library-for-delphi लेकिन मुझे लगता है कि चीजें तब से थोड़ी देर में चली गई हैं।
मैं बस इतना करना चाहता हूं कि मेरे प्रोग्राम में एक ज्ञापन घटक जोड़ें, और रन-टाइम पर ज्ञापन में स्रोत का एक टुकड़ा जोड़ें और एक गो बटन पर क्लिक करें। मैं चाहता हूं कि स्क्रिप्ट मेरे एप्लिकेशन के चर और कार्यों तक पहुंचने में सक्षम हो।
इसे पूरा करने का सबसे आसान तरीका क्या है? उदाहरण कार्यक्रम निम्नानुसार है।
program Project31;
uses
Forms,
Unit36 in 'Unit36.pas' {Form36};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm36, Form36);
Application.Run;
end.
।
unit Unit36;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm36 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form36: TForm36;
implementation
{$R *.dfm}
procedure RoutineInMyApplication ;
begin
ShowMessage ('Hello from my Application') ;
end ;
procedure TForm36.Button1Click(Sender: TObject);
begin
//ExecuteScript (Memo1.Lines) ;
end ;
end.
।
object Form36: TForm36
Left = 0
Top = 0
Caption = 'Form36'
ClientHeight = 174
ClientWidth = 391
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 300
Top = 72
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object Memo1: TMemo
Left = 8
Top = 21
Width = 241
Height = 145
Lines.Strings = (
'begin'
'ShowMessage ('#39'Hello world'#39') ;'
'CallSomehow (RoutineInMyApplication) ;'
'end.'
' ')
TabOrder = 1
end
end
मैं अभी भी व्यक्तिगत रूप से पास्कलस्क्रिप्ट पसंद करूंगा। 64-बिट डेल्फी कंपाइलर के लिए अनुपलब्ध समर्थन की कमी कमजोरी हो सकती है, लेकिन जब आप 32-बिट डेल्फी कंपाइलर का उपयोग कर रहे हैं (समर्थन वर्तमान में डेल्फी एक्सई 2 तक है), तो आप ठीक होंगे, मुझे लगता है। पास्कलस्क्रिप्ट में वर्तमान में बग फ़िक्सिंग (64-बिट कंपाइलर के लिए पाए गए मुद्दों के लिए) पर कम प्राथमिकता है, लेकिन इसका मतलब यह नहीं है कि यह 32-बिट के लिए स्थिर नहीं है। इनोसेटअप जैसी परियोजनाएं इसका उपयोग करती हैं और यह अभी भी जिंदा है। एक बहुत तेज़ खोज के बाद मुझे नहीं लगता कि एक ही प्रमाणित गुणवत्ता में एक मुफ्त विकल्प है। – TLama
धन्यवाद @TLama। मैंने इसे डी 2006 और एक्सई 1 के लिए स्थापित किया था, लेकिन उसने किसी भी डी 10 बीपीएल को स्थापित नहीं किया था, ReadMe.html एक मृत लिंक था, अंतिम प्रविष्टि change.txt फ़ाइल "बोर्लैंड डेवलपर स्टूडियो 2006 के लिए नया समर्थन" था, इसलिए मैं ' आत्मविश्वास नहीं मैं फिर से देखूंगा। यदि आपके पास समय और स्थापित सॉफ़्टवेयर है तो मुझे यह देखने में दिलचस्पी होगी कि मेरा नमूना ऐप चलाने में क्या शामिल होगा। – rossmcm
मैं उस ['changelog.txt'] (https://github.com/remobjects/pascalscript/blob/master/Source/changelog.txt) फ़ाइल को बहुत गंभीरता से नहीं लेगा। उस फ़ाइल में पिछली बार लॉग इन होने के बाद से ['कई प्रतिबद्धताएं] (https://github.com/remobjects/pascalscript/commits/master) थीं, इसलिए मैं कहूंगा कि वे उस फ़ाइल में लॉग इन करने के लिए रुक गए हैं। – TLama