だから私は、デバッグコンソールにすべての拡張ファイル属性をダンプするには、次のコードを使用しています... Shell32は同様P/
ShellClass shellClass = new ShellClass();
Folder dir = shellClass.NameSpace(Path.GetDirectoryName(sFilePath));
FolderItem item = dir.ParseName(Path.GetFileName(sFilePath));
for (int i = 0; i < 267; i++)
{
System.Debug.WriteLine(dir.GetDetailsOf(item, i));
}
が非でShell32は、バイパスInterop.Shell32.dll世代で起動しますDLLリソースをプログラムに直接埋め込むことはできず、interopヘルパーDLLを生成する必要があります。
shell32のこれらの関数のDLLImportコマンドラインについて知っていれば、相互運用性DLLの生成を回避できますか?私はpinvoke.netをチェックして、Shell32エントリーの下で、私が探しているものがないか、または私が期待している名前になっていない。
これを達成するためにDLLImportを使用することができない場合、管理されたDLLを使用するファイルに関するすべての拡張属性を取得する方法を知っていますか、または少なくとも、ヘルパーDLLを生成し、私が開発しているアプリケーションでインストーラが必要ですか?
ありがとうございました!
.NET 4+に組み込まれた相互運用機能を認識していますか? http://msdn.microsoft.com/en-us/library/dd997297.aspx –
残念ながら、私は3.5を使用して立ち往生していますが、それはクールな機能です。 –