2

Microsoft Office で実行されている VBA コードが (MSIL などの中間言語に) コンパイルされているのか、それとも VBA 自体を解釈するインタープリター ベースの言語なのかを調べようとしています。

私はネット上で率直な答えを見つけようとしましたが、明確なものを見つけることができました. VBA を「コンパイル」する API を見つけようとしましたが、見つかりませんでした (コードがコンパイルされていないという意味ではありません)。

内部で何が起こっているのか、または少なくともそれをチェックする方法についてのアイデアを知っている人はいますか?

4

1 に答える 1

5

これがあなたが明示的に探しているものかどうかはわかりませんが、なんとかこれを見つけることができました...

「VBA で記述されたコードは、P コード (パック コード) と呼ばれる独自の中間言語にコンパイルされ、ホスティング アプリケーション (Access、Excel、Word、Outlook、および PowerPoint) は COM 構造化ストレージ ファイル (例:ドキュメント ストリームから独立した .doc または .xls)。その後、中間コードは仮想マシン (ホスティング アプリケーションによってホストされる) によって実行されます[1]。

以下wikiページより。

http://en.wikipedia.org/wiki/Visual_Basic_for_Applications

Pコードの詳細..

http://en.wikipedia.org/wiki/Microsoft_P-Code

お役に立てれば!

于 2013-07-10T06:49:52.637 に答える