[DllImport( "shlwapi.dll", CharSet=CharSet.Unicode, ExactSpelling=true, PreserveSig=false, EntryPoint="SHCreateStreamOnFileW" )]
static extern void SHCreateStreamOnFile( string fileName, uint mode, ref System.Runtime.InteropServices.ComTypes.IStream stream );
None.
Do you know one? Please contribute it!
I have only tested this using .NET 2.0. Also note that the above import will cause the API to throw a managed exception in case of failure as opposed to returning a HRESULT error code.
Please add some!
private System.Runtime.InteropServices.ComTypes.IStream GetComStreamForFile( string fileName )
{
System.Runtime.InteropServices.ComTypes.IStream stream = null;
// 0x20 corresponds to STGM_SHARE_DENY_WRITE
SHCreateStreamOnFile( fileName, 0x20, ref stream );
return stream;
}