Is possible to load code from .txt file ?

Hi experts. I have one question. Is possible to load code from .txt file ? So the program use code from .txt not from the program. Like mirc scripting or something like that. How I shuld do that ?
PoldeAsked:
Who is Participating?
 
Mohammed NasmanSoftware DeveloperCommented:
Hello

you can use Innerfuse Pascal Script to do that, it's free
http://www.carlo-kok.com/ifps3.php

or Fast Experts, but it's not free, but allow you to use Pascal and C++ code
http://www.fast-report.com/en/fastexperts.php

0
 
kretzschmarCommented:
no, except
you code your own interpreter
0
 
Mohammed NasmanSoftware DeveloperCommented:
0
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

 
kretzschmarCommented:
well, ok, a third-party-interpreter instead of an own is also possible :-))
0
 
Mohammed NasmanSoftware DeveloperCommented:
of course :-)
"No" means it's not available with Delphi, but he can write his own or use third party
0
 
gmayoCommented:
Yes you CAN use code in a text file. Use the Include directive:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{$I 'myfile.txt'}

procedure TForm1.FormCreate(Sender: TObject);
begin
      TestMe;
end;

end.

//// and in myfile.txt...

procedure TestMe;
begin
        ShowMessage('Hello, world!');
end;


Geoff M.
0
 
jcondeCommented:
You can add scripting capabilities by using an embedded language.  There's a very nice translation of the Zend (PHP) api to Delphi which you can download for free ... I think its called php4delphi in www.delphipages.com.

Back a few years there was another free component called TPasScript (or something of the sort also found in www.delphipages.com) which basically added a pascal interpreter to delphi written apps.

If you search the web a little, you can also easily include VBA scripting without problems.

BTW, perl was originally built with the intent to be an embedded library for a scripting language ... I don't know if there are any delphi components for this, but by looking at the neede functions it shouldn't be too hard.  The same goes for python.
0
 
j42Commented:
You can install Delphi on your target system and use ShellExecute('C:\programs\borland\Delphi x\bin\delphi32.exe', ...) to compile a temporary *.exe file. Another ShellExecute('tmp.exe', ...) will start it.
0
 
capaverdeCommented:
Are you trying to write a trojan?
Why do you want to load code from .txt?
.exe is not ok?
0
 
PoldeAuthor Commented:
Wowwww :)). So much answers :))) This is great :). No I dont want to write a trojan ! I dont havea time for this things. I wanna make my own IRC client and I realy didnt have any idea about scripting .)
0
 
SaLzCommented:
you probly would be best using ini or xml for your scripting

ini is like a text file but it can hold your data like a database.

uses
INIFiles

procedure TForm1.Button1Click(Sender: TObject);
var
myINI : TINIFile;
begin
myINI := TINIFile.Create(ExtractFilePath(Application.EXEName) + 'tag.ini');

//Read
edit1.Text := myINI.ReadString('Table Name', 'User', 'String');
//Write
myINI.WriteString('Table Name', 'User', 'String');
//Delete
myINI.DeleteKey('Table Name', 'User',);

//Finishing
myINI.Free;

tag.ini

[Table Name]
User=SaLz


you will be able to store your data and retrieve it. this will be very good for your scripting.
0
 
marklewisworkCommented:
Developer Express (www.devexpress.com) has a free library available.  One of the component descriptions is as follows:

dxfExpressionExplorer

This component may be considered an interpreter. It allows you to dynamically change calculation schemes in your program or the algorithm of the running program.

It can process arithmetic expressions and constructions: begin & end, if & then, if & then & else, for & to & do, while & do, repeat & until . It can also process one-argument functions.

I can only assume you can load a script at runtime.
0
 
HypoviaxCommented:
If Geoff's code works then that method is very good.

Regards,

Hypoviax
0
 
HypoviaxCommented:
ang on, the trouble with geoff's code it does not work outside of compilation.
0
 
gmayoCommented:
That depends on exactly what the author wanted. I interpreted it as using code from a file other than the .pas file, ie at compile time. Others have interpreted it as using code at runtime. Without confirmation from the author, it is difficult to tell exactly what is required. So before you complain that my suggestion is wrong, why don't we wait to find out exactly what IS required? Fair enough, I may be wrong - but *you* might be wrong too.

Geoff M.
0
 
kretzschmarCommented:
i guessed
>using code at runtime

;-)
0
 
HypoviaxCommented:
I think this question is very confusing, and i agree with you Geoff, that until the author confirms whether or not that they want code to work at runtime or not, one can only answer the question to their interpretation.

I am sorry if i have offended you,

Regards,

Hypoviax
0
 
SaLzCommented:
> No comment has been added to this question in more than 21 days, so it is now classified as abandoned.

rofl thats an under statement, your a bit sloooow aint ya, call it more than a year rofl!! see am crying here already.
0
 
SaLzCommented:
your doing a very good job, but when it says more than 21days, it really is an under statement, its been over a year, there really should be a page for admins so when they view that page, it will display all the questions for each of the categorys that are over 21 days and then the admins will deal with them as soon as possible.

sounds like common sense.

but, when its 1yr and
>No comment has been added to this question in more than 21 days, so it is now classified as abandoned.

its just so funny, its like the admins are playing catch up, like this question had got lost for so long, but in the end it was finally found and dealt with, good job on dealing with it, was about time this question was closed. (1year to collect 30 points, mnasman, the long wait has paid off in the end)
0
 
SaLzCommented:
forgive me, u do have quite a work load, if u need more admins, I'll be happy to apply.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.