PRTLP_CURDIR_REF CurDirRef;
} RTL_RELATIVE_NAME_U, *PRTL_RELATIVE_NAME_U;
+extern BOOLEAN (WINAPI *func_RtlDosPathNameToNtPathName_U)
+ (IN PCWSTR DosName,
+ OUT PUNICODE_STRING NtName,
+ OUT PCWSTR *PartName,
+ OUT PRTL_RELATIVE_NAME_U RelativeName);
+
extern NTSTATUS (WINAPI *func_RtlDosPathNameToNtPathName_U_WithStatus)
(IN PCWSTR DosName,
OUT PUNICODE_STRING NtName,
extern NTSTATUS (WINAPI *func_RtlCreateSystemVolumeInformationFolder)
(PCUNICODE_STRING VolumeRootPath);
+#define FSCTL_SET_PERSISTENT_VOLUME_STATE 0x90238
-extern bool
-windows_version_is_at_least(unsigned major, unsigned minor);
-
-#define running_on_windows_xp_or_later() \
- windows_version_is_at_least(5, 1)
-
-#define running_on_windows_vista_or_later() \
- windows_version_is_at_least(6, 0)
+#define PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED 0x00000001
-#define running_on_windows_7_or_later() \
- windows_version_is_at_least(6, 1)
+typedef struct _FILE_FS_PERSISTENT_VOLUME_INFORMATION {
+ ULONG VolumeFlags;
+ ULONG FlagMask;
+ ULONG Version;
+ ULONG Reserved;
+} FILE_FS_PERSISTENT_VOLUME_INFORMATION, *PFILE_FS_PERSISTENT_VOLUME_INFORMATION;
+extern int
+win32_path_to_nt_path(const wchar_t *win32_path, UNICODE_STRING *nt_path);
+extern int
+win32_get_drive_path(const wchar_t *file_path, wchar_t drive_path[7]);
#endif /* _WIMLIB_WIN32_COMMON_H */