LPDWORD lpBinaryType
)
{
- ANSI_STRING FileNameA;
- UNICODE_STRING FileName;
- NTSTATUS Status;
- BOOL Ret;
+ PWCHAR ApplicationNameW;
if(!lpApplicationName || !lpBinaryType)
{
return FALSE;
}
- RtlInitAnsiString(&FileNameA, (LPSTR)lpApplicationName);
+ if (!(ApplicationNameW = FilenameA2W(lpApplicationName, FALSE)))
+ return FALSE;
- if(bIsFileApiAnsi)
- Status = RtlAnsiStringToUnicodeString(&FileName, &FileNameA, TRUE);
- else
- Status = RtlOemStringToUnicodeString(&FileName, &FileNameA, TRUE);
- if(!NT_SUCCESS(Status))
- {
- SetLastErrorByStatus(Status);
- return FALSE;
- }
-
- Ret = GetBinaryTypeW(FileName.Buffer, lpBinaryType);
-
- RtlFreeUnicodeString(&FileName);
- return Ret;
+ return GetBinaryTypeW(ApplicationNameW, lpBinaryType);
}
/* EOF */
DWORD dwCopyFlags
)
{
- UNICODE_STRING ExistingFileNameU;
- UNICODE_STRING NewFileNameU;
- ANSI_STRING ExistingFileName;
- ANSI_STRING NewFileName;
+ PWCHAR ExistingFileNameW;
+ PWCHAR NewFileNameW;
BOOL Result;
- RtlInitAnsiString (&ExistingFileName,
- (LPSTR)lpExistingFileName);
-
- RtlInitAnsiString (&NewFileName,
- (LPSTR)lpNewFileName);
-
- /* convert ansi (or oem) string to unicode */
- if (bIsFileApiAnsi)
- {
- RtlAnsiStringToUnicodeString (&ExistingFileNameU,
- &ExistingFileName,
- TRUE);
- RtlAnsiStringToUnicodeString (&NewFileNameU,
- &NewFileName,
- TRUE);
- }
- else
- {
- RtlOemStringToUnicodeString (&ExistingFileNameU,
- &ExistingFileName,
- TRUE);
- RtlOemStringToUnicodeString (&NewFileNameU,
- &NewFileName,
- TRUE);
- }
-
- Result = CopyFileExW (ExistingFileNameU.Buffer,
- NewFileNameU.Buffer,
+ if (!(ExistingFileNameW = FilenameA2W(lpExistingFileName, FALSE)))
+ return FALSE;
+
+ if (!(NewFileNameW = FilenameA2W(lpNewFileName, TRUE)))
+ return FALSE;
+
+ Result = CopyFileExW (ExistingFileNameW ,
+ NewFileNameW ,
lpProgressRoutine,
lpData,
pbCancel,
RtlFreeHeap (RtlGetProcessHeap (),
0,
- ExistingFileNameU.Buffer);
- RtlFreeHeap (RtlGetProcessHeap (),
- 0,
- NewFileNameU.Buffer);
+ NewFileNameW);
return Result;
}
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile)
{
- UNICODE_STRING FileNameU;
- ANSI_STRING FileName;
+ PWCHAR FileNameW;
HANDLE FileHandle;
DPRINT("CreateFileA(lpFileName %s)\n",lpFileName);
-
- RtlInitAnsiString (&FileName,
- (LPSTR)lpFileName);
-
- /* convert ansi (or oem) string to unicode */
- if (bIsFileApiAnsi)
- RtlAnsiStringToUnicodeString (&FileNameU,
- &FileName,
- TRUE);
- else
- RtlOemStringToUnicodeString (&FileNameU,
- &FileName,
- TRUE);
- FileHandle = CreateFileW (FileNameU.Buffer,
+ if (!(FileNameW = FilenameA2W(lpFileName, FALSE)))
+ return INVALID_HANDLE_VALUE;
+
+ FileHandle = CreateFileW (FileNameW ,
dwDesiredAccess,
dwShareMode,
lpSecurityAttributes,
dwFlagsAndAttributes,
hTemplateFile);
- RtlFreeHeap (RtlGetProcessHeap (),
- 0,
- FileNameU.Buffer);
-
return FileHandle;
}
LPCSTR lpFileName
)
{
- UNICODE_STRING FileNameU;
- ANSI_STRING FileName;
- BOOL Result;
-
- RtlInitAnsiString (&FileName,
- (LPSTR)lpFileName);
-
- /* convert ansi (or oem) string to unicode */
- if (bIsFileApiAnsi)
- RtlAnsiStringToUnicodeString (&FileNameU,
- &FileName,
- TRUE);
- else
- RtlOemStringToUnicodeString (&FileNameU,
- &FileName,
- TRUE);
-
- Result = DeleteFileW (FileNameU.Buffer);
-
- RtlFreeHeap (RtlGetProcessHeap (),
- 0,
- FileNameU.Buffer);
-
- return Result;
+ PWCHAR FileNameW;
+
+ if (!(FileNameW = FilenameA2W(lpFileName, FALSE)))
+ return FALSE;
+
+ return DeleteFileW (FileNameW);
}
DWORD dwFlags
)
{
- UNICODE_STRING ExistingFileNameU;
- UNICODE_STRING NewFileNameU;
- ANSI_STRING ExistingFileName;
- ANSI_STRING NewFileName;
- BOOL Result;
-
- RtlInitAnsiString (&ExistingFileName,
- (LPSTR)lpExistingFileName);
-
- RtlInitAnsiString (&NewFileName,
- (LPSTR)lpNewFileName);
-
- /* convert ansi (or oem) string to unicode */
- if (bIsFileApiAnsi)
- {
- RtlAnsiStringToUnicodeString (&ExistingFileNameU,
- &ExistingFileName,
- TRUE);
- RtlAnsiStringToUnicodeString (&NewFileNameU,
- &NewFileName,
- TRUE);
- }
- else
- {
- RtlOemStringToUnicodeString (&ExistingFileNameU,
- &ExistingFileName,
- TRUE);
- RtlOemStringToUnicodeString (&NewFileNameU,
- &NewFileName,
- TRUE);
- }
-
- Result = MoveFileWithProgressW (ExistingFileNameU.Buffer,
- NewFileNameU.Buffer,
+ PWCHAR ExistingFileNameW;
+ PWCHAR NewFileNameW;
+ BOOL ret;
+
+ if (!(ExistingFileNameW = FilenameA2W(lpExistingFileName, FALSE)))
+ return FALSE;
+
+ if (!(NewFileNameW= FilenameA2W(lpNewFileName, TRUE)))
+ return FALSE;
+
+ ret = MoveFileWithProgressW (ExistingFileNameW ,
+ NewFileNameW,
lpProgressRoutine,
lpData,
dwFlags);
- RtlFreeHeap (RtlGetProcessHeap (),
- 0,
- ExistingFileNameU.Buffer);
- RtlFreeHeap (RtlGetProcessHeap (),
- 0,
- NewFileNameU.Buffer);
+ RtlFreeHeap (RtlGetProcessHeap (), 0, NewFileNameW);
- return Result;
+ return ret;
}