2

私はVB6でゲームを持っていて、それはすべてうまく機能しますが、私はスクリプトエンジンを作成するというアイデアをいじっています。VB6にフラットテキストスクリプトファイルを読み込んでから、それらをlex / parse/executeしてもらいたいと思っています。

私はプログラミングの経験が豊富で、以前は単純なCコンパイラとLOGOエミュレータを構築しました。

私の質問は次のとおりです。Lexx/Yakk/ Bisonのように、私が使用できるツールはありますか?コマンドを処理できるように、コマンドの字句解析、解析、およびVB6へのフィードバックに関して、この問題にどのように対処する必要がありますか?このアイデアは、障害物が多すぎるという意味で悪いアイデアですか(たとえば、組み立てで掃海艇を構築することは不可能ではありませんが、非常に困難であり、悪いアイデアです)。

4

5 に答える 5

4

既存のVB6アプリケーションに簡単に統合できるため、Microsoft®Windows®ScriptControlを使用してください。コントロールは、VBScript、JScript、またはその他の「アクティブスクリプト」実装をサポートします。

私は4つのプロジェクトでWindowsScriptControlを使用しましたが、非常にうまく機能します。統合は非常に簡単です。Microsoftが.NETの代替品を提供し、それを使いやすくしてくれたらよかったのにと思います。(.NETではコントロールは必要ないことは理解していますが、すべてを処理するオブジェクトを簡単に作成できるのは素晴らしいことです。)

Windowsスクリプト制御

Microsoft®Windows®スクリプトコントロールは、アプリケーションをスクリプト可能にする簡単な方法を開発者に提供するActiveX®コントロールです。これにより、ユーザーは、現在のマクロの場合と同じように、スクリプトを使用してアプリケーション機能を拡張できます。

于 2010-06-09T20:05:23.997 に答える
3

あなたがあなた自身の指示のためにそれをしているのでない限り、あなたはLuaを使ってみたくなるかもしれません:VB6-Lua統合

于 2010-06-09T13:58:51.153 に答える
2

VB6ではなくVBScriptを使用する場合はMSScriptControl、独自のコマンドを作成するのではなく、を使用してコマンドを実行できる場合があります。これは.Netアプリからの使用について説明している記事ですが、これはActiveXコントロールであるため、かなりの柔軟性が得られるはずです。

コントロールはここからダウンロードできます。

于 2010-06-08T18:28:18.477 に答える
2

私は実際にVB6[1]でコンパイラ/インタプリタのかなり合理的な実装を見てきました-それは私が選択する言語ではありません(いくつかの機能機能、不十分な静的型システム)が、経験を積むと、これらの欠点を克服し、非常に生産的になります-では、なぜですか。

まず、VB6をサポートするGOLDパーサジェネレーターを使用できます。

[1]:PSCのどこか、またはこのダウンロードリポジトリのどこかで...

MSScriptControlもあることに注意してください。

于 2010-06-08T18:33:36.517 に答える
0

VB6には追加の代替手段もあるようです。

SadScriptは、MMORPGSのスクリプトエンジンとしてVB6で最も顕著に使用されるVB6のバリアントです。

詳細はこちらをご覧ください:sadscriptとは何ですか?vb.netで使用できますか?なぜ私が尋ねた人はそれを聞いたことがないのですか?

于 2010-06-10T18:37:57.427 に答える