ソフト内スクリプトって、どうやってソフト内で、内部評価されてるんでしょう? コマンドを垂れ流すのはわかります。 しかし、forループとかサポートしてるのがあるでしょ。 ソフト内の

プログラミング67閲覧xmlns="http://www.w3.org/2000/svg">250

ベストアンサー

0

ThanksImg質問者からのお礼コメント

なるほど、いくつか方法があるのですね。 具体的で助かりました。 ありがとうございます。

お礼日時:2019/11/13 22:52

その他の回答(1件)

1

[基本的な方法] 普通にコンパイラを作成します。 対象ソフトの作成でコンパイラも作りますので、対象ソフト内で、スクリプトのコードの解釈が可能です。 対象ソフト自体がコンパイラなので、解釈が可能です。 コンパイラでなく、インタープリタ(解釈する単位が複数行まとめてではなく、1行単位のもの)ならば、比較的簡単に作れます。 質問者さんなら、作れます。 (過去の回答から、少なくとも、それなりには、実力がある様子ですので) [最近の簡単な方法] 上記は、昔から今も行なわれている方法です。 最近では、もっと簡単な方法があります。 対象ソフトの作成は、C#になります。 スクリプト言語のほうも、C#になります。 C#のプラグインと言う方法を使います。 ところで、DLLは、Dynamic Link Library(ダイナミックリンクライブラリ)なので、実行時に自由に呼び込めるはずです。 しかし、呼び出し元ソフトをコンパイルしたあとに、DLLを別なものに入れ替えると、実行時エラーになります。 これに対して、C#のプラグインでは、DLLを入れ替えても、全く問題ありません。 また、呼び出し元ソフトのコンパイルの時に、DLLがなくても、問題なくコンパイルが通ります。 あとから、DLLを付け足せばよいのです。 すなわち、本当の意味での「実行時に自由に呼び込めるDLL」になります。 DLLの呼び出し方は、C# と プラグイン のキーワードで検索して下さい。 また、実際のプログラミング方法は、リフレクションと言う機能を使います。 DLL側に、「abcと言う名前のメソッドがあるのか」とか、「efgと言う名前の変数があるのか」と調べて、それを実際に使う機能です。 詳しくは、C# と リフレクション のキーワードで検索して下さい。

1人がナイス!しています