private static extern IntPtr CreateFile( [In] String fileName, [In] UInt32 desiredAccess, [In] FileShareFlags shareMode, [In, Optional] IntPtr securityAttributes, [In] FileCreateFlags creationDisposition, [In] UInt32 flagsAndAttributes, [In] IntPtr templateFile);
public static extern SafeFileHandle CreateFile( string lpFileName, FileDesiredAccess dwDesiredAccess, FileShareFlags dwShareMode, IntPtr lpSecurityAttributes, FileCreationDisposition dwCreationDisposition, FileFlagsAndAttributes dwFlagsAndAttributes, IntPtr hTemplateFile );
internal static extern SafeFileHandle CreateFile([MarshalAs(UnmanagedType.LPTStr)] String lpFileName, FileAccessFlags dwDesiredAccess, FileShareFlags dwShareMode, IntPtr lpSecurityAttributes, CreationDispositionTypes dwCreationDisposition, AttributeFlags dwFlagsAndAttributes, IntPtr hTemplateFile);