問題タブ [tlbexp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
152 参照

c# - C# 構造体のプロパティは、COM と VB6 で使用できない名前を取得しますか?

私の C# コードには、structCOM にエクスポートする があります。この構造体のプロパティは、VB6 では有効な構文でさえない奇妙な名前を使用しているため、アクセスできません。

これらを通常の使用可能な名前でエクスポートする方法はありますか? 属性か何かがありませんか?


COM / VB6 での名前の形式は次のとおりです。

original_name私のC#コードにはその部分だけがありました。

これらのクレイジーなプロパティ名は VB6 オブジェクト ブラウザでしか見ることができず、Intellisense では表示されません。

ビルド中の (少しサニタイズされた) コードは次のとおりです。

適切な測定のために、生成される IDL を次に示します。

OleView で表示されます。k__BackingField上記と同じものが含まれていることがわかります。したがって、これらの名前は C# の typelib エクスポート プロセスから来ているようです。