George, I have seen an example somewhere that would let you compile code and then link the dll in straight away so that the application could use it - all at runtime. Not script exactly but it would have a similar effect. Unfortunately I can't find where I saw it, but it probably wouldn't take much to work it out.
Also, you may want to look at the Code DOM, I believe that you can use it to help you generate code. Cheers Matthew Hunter ----- Original Message ----- From: "george antony" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Saturday, June 15, 2002 4:42 PM Subject: Re: [DOTNET] Urgent pls -script engine > hi > I want the .net code itself to be executed as a > script. > The user enters a .net code..The whole code should > execute as a script.. > > regards > gan > --- "Collins, Michael G" <[EMAIL PROTECTED]> > wrote: > > Here is some sample code I created a few days back. > > This is a WinForm application. > > > > Watch for line breaks where they don't belong. > > (Wonderfull email) > > > > Make sure you include a reference to the > > MSScriptingControl: > > 1) Right click on 'References' in the Solution > > Explorer > > 2) Click on Add Reference > > 3) Click on the COM tab > > 4) Double click on the 'Microsoft Script Control > > 1.0' > > This will import it into your project. > > 5) Click OK > > > > Then use the code below to test it. > > > > I love how you can add .NET objects into the script > > engine by just adding > > public functions. > > > > WAY COOL! > > > > Here is my code for reference: > > ------------------------------------------ > > (Form1.cs) > > ------------------------------------------ > > using System; > > using System.Drawing; > > using System.Collections; > > using System.ComponentModel; > > using System.Windows.Forms; > > using System.Data; > > > > namespace ScriptTest1 > > { > > /// <summary> > > /// Summary description for Form1. > > /// </summary> > > public class Form1 : > > System.Windows.Forms.Form > > { > > private System.Windows.Forms.Label > > label1; > > private System.Windows.Forms.Button > > runButton; > > private System.Windows.Forms.Button > > closeButton; > > private System.Windows.Forms.TextBox > > sourceCode; > > private > > MSScriptControl.ScriptControl iscr; > > /// <summary> > > /// Required designer variable. > > /// </summary> > > private > > System.ComponentModel.Container components = null; > > > > public Form1() > > { > > // > > // Required for Windows Form > > Designer support > > // > > InitializeComponent(); > > > > // > > // TODO: Add any constructor > > code after > > InitializeComponent call > > // > > } > > > > /// <summary> > > /// Clean up any resources being > > used. > > /// </summary> > > protected override void Dispose( > > bool disposing ) > > { > > if( disposing ) > > { > > if (components != > > null) > > { > > > > components.Dispose(); > > } > > } > > base.Dispose( disposing ); > > } > > > > #region Windows Form Designer > > generated code > > /// <summary> > > /// Required method for Designer > > support - do not modify > > /// the contents of this method with > > the code editor. > > /// </summary> > > private void InitializeComponent() > > { > > this.label1 = new > > System.Windows.Forms.Label(); > > this.runButton = new > > System.Windows.Forms.Button(); > > this.closeButton = new > > System.Windows.Forms.Button(); > > this.sourceCode = new > > System.Windows.Forms.TextBox(); > > this.SuspendLayout(); > > // > > // label1 > > // > > this.label1.BackColor = > > System.Drawing.SystemColors.Window; > > this.label1.BorderStyle = > > System.Windows.Forms.BorderStyle.FixedSingle; > > this.label1.FlatStyle = > > System.Windows.Forms.FlatStyle.Flat; > > this.label1.Location = new > > System.Drawing.Point(8, > > 184); > > this.label1.Name = "label1"; > > this.label1.RightToLeft = > > System.Windows.Forms.RightToLeft.No; > > this.label1.Size = new > > System.Drawing.Size(448, > > 216); > > this.label1.TabIndex = 0; > > // > > // runButton > > // > > this.runButton.Location = > > new > > System.Drawing.Point(8, 152); > > this.runButton.Name = > > "runButton"; > > this.runButton.TabIndex = 1; > > this.runButton.Text = "Run"; > > this.runButton.Click += new > > System.EventHandler(this.runButton_Click); > > // > > // closeButton > > // > > this.closeButton.Location = > > new > > System.Drawing.Point(384, 152); > > this.closeButton.Name = > > "closeButton"; > > this.closeButton.TabIndex = > > 2; > > this.closeButton.Text = > > "Close"; > > this.closeButton.Click += > > new > > System.EventHandler(this.closeButton_Click); > > // > > // sourceCode > > // > > this.sourceCode.AcceptsTab = > > true; > > this.sourceCode.AllowDrop = > > true; > > this.sourceCode.Location = > > new > > System.Drawing.Point(8, 8); > > this.sourceCode.Multiline = > > true; > > this.sourceCode.Name = > > "sourceCode"; > > this.sourceCode.ScrollBars = > > System.Windows.Forms.ScrollBars.Both; > > this.sourceCode.Size = new > > System.Drawing.Size(448, > > 136); > > this.sourceCode.TabIndex = > > 3; > > this.sourceCode.Text = "var > > out = \"\";\r\nout = > > \"hello from jscript\\r\\n\";\r\n\r\nfor( i = 0; i < > > 10; i++ )\r\n{\r\n\t" + > > "out += \"This is > > the output for line: > > \"+(i+1)+\" - > > [\"+obj.Add(i,i)+\"]\"+\"\\r\\n\";\r\n}\r" + > > "\n\r\ntest.Write( > > out );\r\ntest.Alert( > > \"This is a popup!\" );"; > > this.sourceCode.TextChanged > > += new > > System.EventHandler(this.sourceCode_TextChanged); > > // > > // Form1 > > // > > this.AutoScaleBaseSize = new > > System.Drawing.Size(5, > > 13); > > this.ClientSize = new > > System.Drawing.Size(464, > === message truncated === > > > __________________________________________________ > Do You Yahoo!? > Yahoo! - Official partner of 2002 FIFA World Cup > http://fifaworldcup.yahoo.com > > You can read messages from the DOTNET archive, unsubscribe from DOTNET, or > subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com.