問題タブ [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.
c# - C# 構造体のプロパティは、COM と VB6 で使用できない名前を取得しますか?
私の C# コードには、struct
COM にエクスポートする があります。この構造体のプロパティは、VB6 では有効な構文でさえない奇妙な名前を使用しているため、アクセスできません。
これらを通常の使用可能な名前でエクスポートする方法はありますか? 属性か何かがありませんか?
COM / VB6 での名前の形式は次のとおりです。
original_name
私のC#コードにはその部分だけがありました。
これらのクレイジーなプロパティ名は VB6 オブジェクト ブラウザでしか見ることができず、Intellisense では表示されません。
ビルド中の (少しサニタイズされた) コードは次のとおりです。
適切な測定のために、生成される IDL を次に示します。
OleView で表示されます。k__BackingField
上記と同じものが含まれていることがわかります。したがって、これらの名前は C# の typelib エクスポート プロセスから来ているようです。