Revision | 9 (tree) |
---|---|
Zeit | 2019-01-06 22:35:08 |
Autor | dangerouswoo |
動的スクリプト
引数追加
@@ -405,7 +405,7 @@ | ||
405 | 405 | private void BuildBtn_Click(object sender, EventArgs e) |
406 | 406 | { |
407 | 407 | var buildlogic = new DynamicBuildLogic(); |
408 | - if (buildlogic.BuildDaia(m_form.Factory as BaseFactory, DiaSrcTxt.Text) == false) | |
408 | + if (buildlogic.BuildDaia(m_form.Factory as BaseFactory, DiaSrcTxt.Text, this) == false) | |
409 | 409 | { |
410 | 410 | var error = buildlogic.ErrorToString(); |
411 | 411 |
@@ -9,6 +9,7 @@ | ||
9 | 9 | using System.Reflection; |
10 | 10 | using System.Runtime.InteropServices; |
11 | 11 | using Microsoft.CSharp; |
12 | +using System.Windows.Forms; | |
12 | 13 | |
13 | 14 | namespace WhereTrainBuild.MapUtil.Data |
14 | 15 | { |
@@ -40,7 +41,7 @@ | ||
40 | 41 | /// <param name="factory"></param> |
41 | 42 | /// <param name="filename">スクリプトファイル</param> |
42 | 43 | /// <returns></returns> |
43 | - public bool BuildDaia(BaseFactory factory, string filename) | |
44 | + public bool BuildDaia(BaseFactory factory, string filename, Control cnt ) | |
44 | 45 | { |
45 | 46 | //解凍 |
46 | 47 | var basefolder = Path.Combine(Path.GetDirectoryName(filename),"extend"); |
@@ -80,7 +81,7 @@ | ||
80 | 81 | |
81 | 82 | if (Compile(srclist, asslist) == true) |
82 | 83 | { |
83 | - var result = (string)Run(factory, basefolder); | |
84 | + var result = (string)Run(factory, basefolder, cnt); | |
84 | 85 | if (result == "OK") |
85 | 86 | return true; |
86 | 87 | else |
@@ -242,9 +243,9 @@ | ||
242 | 243 | /// <returns> |
243 | 244 | /// スクリプトからの戻値 |
244 | 245 | /// </returns> |
245 | - protected object Run(BaseFactory factory, string basefolder ) | |
246 | + protected object Run(BaseFactory factory, string basefolder, Control cnt) | |
246 | 247 | { |
247 | - return Run(factory, basefolder, GetAssembly()); | |
248 | + return Run(factory, basefolder, cnt, GetAssembly()); | |
248 | 249 | } |
249 | 250 | |
250 | 251 | /// <summary> |
@@ -254,7 +255,7 @@ | ||
254 | 255 | /// <param name="entryclass">エントリクラス名</param> |
255 | 256 | /// <param name="assembly">対象アセンブリ</param> |
256 | 257 | /// <returns>戻値</returns> |
257 | - protected static object Run(BaseFactory factory, String basefolder, Assembly assembly) | |
258 | + protected static object Run(BaseFactory factory, String basefolder, Control cnt, Assembly assembly) | |
258 | 259 | { |
259 | 260 | object scriptengine = assembly.CreateInstance("WhereTrainBuild.Script.TransitBuildLogic"); |
260 | 261 | if (scriptengine == null) |
@@ -265,7 +266,7 @@ | ||
265 | 266 | |
266 | 267 | try |
267 | 268 | { |
268 | - return mi.Invoke(scriptengine, new object[] { factory, basefolder }); | |
269 | + return mi.Invoke(scriptengine, new object[] { factory, basefolder, cnt }); | |
269 | 270 | } |
270 | 271 | catch (System.Reflection.TargetInvocationException ex) |
271 | 272 | { |