mirror of
				https://github.com/winfsp/winfsp.git
				synced 2025-10-30 19:48:38 -05:00 
			
		
		
		
	Merge pull request #176 from FrKaram/Issue174
dotnet: add FlushAndPurgeOnCleanup and FspVersion
This commit is contained in:
		| @@ -60,4 +60,5 @@ CONTRIBUTOR LIST | ||||
| |John Oberschelp                                                |john at oberschelp.net | ||||
| |Sam Kelly (DuroSoft Technologies LLC, https://durosoft.com)    |sam at durosoft.com | ||||
| |Tobias Urlaub                                                  |saibotu at outlook.de | ||||
| |Francois Karam (KS2, http://www.ks2.fr)                        |francois.karam at ks2.fr | ||||
| |=== | ||||
|   | ||||
| @@ -194,6 +194,11 @@ namespace Fsp | ||||
|             get { return 0 != (_VolumeParams.Flags & VolumeParams.PassQueryDirectoryFileName); } | ||||
|             set { _VolumeParams.Flags |= (value ? VolumeParams.PassQueryDirectoryFileName : 0); } | ||||
|         } | ||||
|         public Boolean FlushAndPurgeOnCleanup | ||||
|         { | ||||
|             get { return 0 != (_VolumeParams.Flags & VolumeParams.FlushAndPurgeOnCleanup); } | ||||
|             set { _VolumeParams.Flags |= (value ? VolumeParams.FlushAndPurgeOnCleanup : 0); } | ||||
|         } | ||||
|         /// <summary> | ||||
|         /// Gets or sets the prefix for a network file system. | ||||
|         /// </summary> | ||||
| @@ -347,6 +352,14 @@ namespace Fsp | ||||
|         { | ||||
|             return Api.SetDebugLogFile(FileName); | ||||
|         } | ||||
|         /// <summary> | ||||
|         /// Return the installed version of WinFsp. | ||||
|         /// </summary> | ||||
|         /// <returns></returns> | ||||
|         public static Version Version() | ||||
|         { | ||||
|             return Api.GetFspVersion(); | ||||
|         } | ||||
|  | ||||
|         /* FSP_FILE_SYSTEM_INTERFACE */ | ||||
|         private static Byte[] ByteBufferNotNull = new Byte[0]; | ||||
|   | ||||
| @@ -43,6 +43,7 @@ namespace Fsp.Interop | ||||
|         internal const UInt32 PassQueryDirectoryPattern = 0x00000800; | ||||
|         internal const UInt32 AlwaysUseDoubleBuffering = 0x00001000; | ||||
|         internal const UInt32 PassQueryDirectoryFileName = 0x00002000; | ||||
|         internal const UInt32 FlushAndPurgeOnCleanup = 0x00004000; | ||||
|         internal const UInt32 UmFileContextIsUserContext2 = 0x00010000; | ||||
|         internal const UInt32 UmFileContextIsFullContext = 0x00020000; | ||||
|         internal const int PrefixSize = 192; | ||||
| @@ -979,6 +980,13 @@ namespace Fsp.Interop | ||||
|             return 0/*STATUS_SUCCESS*/; | ||||
|         } | ||||
|  | ||||
|         internal static Version GetFspVersion() | ||||
|         { | ||||
|             UInt32 Version = 0; | ||||
|             FspVersion(out Version); | ||||
|             return new System.Version((Int32)Version >> 16, (Int32)Version & 0xFFFF); | ||||
|         } | ||||
|  | ||||
|         /* initialization */ | ||||
|         private static IntPtr LoadDll() | ||||
|         { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user