x64でのCOM呼び出し規約
-
05-07-2019 - |
質問
x64マシンでのCOMの動作に関する明確な答えを得ようとしています。 Windowsは、x64マシン上のCOMインターフェイスへの呼び出しをディスパッチするときに、通常のx64呼び出し規則を使用しますか(COM実装が64ビットであると仮定)?具体的には、ランタイム中に動的にロードされるアセンブリのチャンクを指すvtblエントリを動的に生成します。このアセンブリは、呼び出し元のユーザーからパラメーターを正しく取得する方法を知る必要があります。したがって、COMが標準のx64呼び出し規約(ほとんどfastcall)を使用してアセンブリへの呼び出しを設定するかどうかを知りたいです。
解決
COM呼び出し規約は、STDMETHOD / STDMETHODIMPマクロ(およびそのバリアント)で定義されているものです。 IA-32では、それらのほとんどは stdcall
です。 x86-64で何が使用されているかわかりません(32ビットmingwクロスコンパイラのみがインストールされています)。
所属していません StackOverflow