From c1d9e2bb6c946659fa2fc520450d0dfe5dddf52c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Fri, 21 Jul 2006 22:15:21 +0000 Subject: [PATCH] Get rid of TCHAR variables. Use WCHAR instead. svn path=/trunk/; revision=23219 --- reactos/dll/win32/newdev/newdev.c | 104 +++++++++++----------- reactos/dll/win32/newdev/newdev.rbuild | 2 - reactos/dll/win32/newdev/newdev_private.h | 4 +- reactos/dll/win32/newdev/wizard.c | 59 ++++++------ 4 files changed, 83 insertions(+), 86 deletions(-) diff --git a/reactos/dll/win32/newdev/newdev.c b/reactos/dll/win32/newdev/newdev.c index 6528a4df6e3..7531a567cbc 100644 --- a/reactos/dll/win32/newdev/newdev.c +++ b/reactos/dll/win32/newdev/newdev.c @@ -30,8 +30,8 @@ HINSTANCE hDllInstance; static BOOL SearchDriver( IN PDEVINSTDATA DevInstData, - IN LPCTSTR Directory OPTIONAL, - IN LPCTSTR InfFile OPTIONAL); + IN LPCWSTR Directory OPTIONAL, + IN LPCWSTR InfFile OPTIONAL); /* * @implemented @@ -250,14 +250,14 @@ UpdateDriverForPlugAndPlayDevicesA( static BOOL SearchDriver( IN PDEVINSTDATA DevInstData, - IN LPCTSTR Directory OPTIONAL, - IN LPCTSTR InfFile OPTIONAL) + IN LPCWSTR Directory OPTIONAL, + IN LPCWSTR InfFile OPTIONAL) { - SP_DEVINSTALL_PARAMS DevInstallParams = {0,}; + SP_DEVINSTALL_PARAMS_W DevInstallParams = {0,}; BOOL ret; - DevInstallParams.cbSize = sizeof(SP_DEVINSTALL_PARAMS); - if (!SetupDiGetDeviceInstallParams(DevInstData->hDevInfo, &DevInstData->devInfoData, &DevInstallParams)) + DevInstallParams.cbSize = sizeof(SP_DEVINSTALL_PARAMS_W); + if (!SetupDiGetDeviceInstallParamsW(DevInstData->hDevInfo, &DevInstData->devInfoData, &DevInstallParams)) { TRACE("SetupDiGetDeviceInstallParams() failed with error 0x%lx\n", GetLastError()); return FALSE; @@ -267,20 +267,20 @@ SearchDriver( if (InfFile) { DevInstallParams.Flags |= DI_ENUMSINGLEINF; - _tcsncpy(DevInstallParams.DriverPath, InfFile, MAX_PATH); + wcsncpy(DevInstallParams.DriverPath, InfFile, MAX_PATH); } else if (Directory) { DevInstallParams.Flags &= ~DI_ENUMSINGLEINF; - _tcsncpy(DevInstallParams.DriverPath, Directory, MAX_PATH); + wcsncpy(DevInstallParams.DriverPath, Directory, MAX_PATH); } else { DevInstallParams.Flags &= ~DI_ENUMSINGLEINF; - *DevInstallParams.DriverPath = _T('\0'); + *DevInstallParams.DriverPath = '\0'; } - ret = SetupDiSetDeviceInstallParams( + ret = SetupDiSetDeviceInstallParamsW( DevInstData->hDevInfo, &DevInstData->devInfoData, &DevInstallParams); @@ -319,20 +319,20 @@ SearchDriver( } static BOOL -IsDots(IN LPCTSTR str) +IsDots(IN LPCWSTR str) { - if(_tcscmp(str, _T(".")) && _tcscmp(str, _T(".."))) return FALSE; + if(wcscmp(str, L".") && wcscmp(str, L"..")) return FALSE; return TRUE; } -static LPCTSTR -GetFileExt(IN LPTSTR FileName) +static LPCWSTR +GetFileExt(IN LPWSTR FileName) { - LPCTSTR Dot; + LPCWSTR Dot; - Dot = _tcsrchr(FileName, _T('.')); + Dot = wcsrchr(FileName, '.'); if (!Dot) - return _T(""); + return L""; return Dot; } @@ -340,40 +340,40 @@ GetFileExt(IN LPTSTR FileName) static BOOL SearchDriverRecursive( IN PDEVINSTDATA DevInstData, - IN LPCTSTR Path) + IN LPCWSTR Path) { - WIN32_FIND_DATA wfd; - TCHAR DirPath[MAX_PATH]; - TCHAR FileName[MAX_PATH]; - TCHAR FullPath[MAX_PATH]; - TCHAR LastDirPath[MAX_PATH] = _T(""); - TCHAR PathWithPattern[MAX_PATH]; + WIN32_FIND_DATAW wfd; + WCHAR DirPath[MAX_PATH]; + WCHAR FileName[MAX_PATH]; + WCHAR FullPath[MAX_PATH]; + WCHAR LastDirPath[MAX_PATH] = L""; + WCHAR PathWithPattern[MAX_PATH]; BOOL ok = TRUE; BOOL retval = FALSE; HANDLE hFindFile = INVALID_HANDLE_VALUE; - _tcscpy(DirPath, Path); + wcscpy(DirPath, Path); - if (DirPath[_tcsclen(DirPath) - 1] != '\\') - _tcscat(DirPath, _T("\\")); + if (DirPath[wcslen(DirPath) - 1] != '\\') + wcscat(DirPath, L"\\"); - _tcscpy(PathWithPattern, DirPath); - _tcscat(PathWithPattern, _T("\\*")); + wcscpy(PathWithPattern, DirPath); + wcscat(PathWithPattern, L"\\*"); - for (hFindFile = FindFirstFile(PathWithPattern, &wfd); + for (hFindFile = FindFirstFileW(PathWithPattern, &wfd); ok && hFindFile != INVALID_HANDLE_VALUE; - ok = FindNextFile(hFindFile, &wfd)) + ok = FindNextFileW(hFindFile, &wfd)) { - _tcscpy(FileName, wfd.cFileName); + wcscpy(FileName, wfd.cFileName); if (IsDots(FileName)) continue; if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { /* Recursive search */ - _tcscpy(FullPath, DirPath); - _tcscat(FullPath, FileName); + wcscpy(FullPath, DirPath); + wcscat(FullPath, FileName); if (SearchDriverRecursive(DevInstData, FullPath)) { retval = TRUE; @@ -382,13 +382,13 @@ SearchDriverRecursive( } else { - LPCTSTR pszExtension = GetFileExt(FileName); + LPCWSTR pszExtension = GetFileExt(FileName); - if ((_tcsicmp(pszExtension, _T(".inf")) == 0) && (_tcscmp(LastDirPath, DirPath) != 0)) + if ((wcsicmp(pszExtension, L".inf") == 0) && (wcscmp(LastDirPath, DirPath) != 0)) { - _tcscpy(LastDirPath, DirPath); + wcscpy(LastDirPath, DirPath); - if (_tcsclen(DirPath) > MAX_PATH) + if (wcslen(DirPath) > MAX_PATH) /* Path is too long to be searched */ continue; @@ -422,11 +422,11 @@ ScanFoldersForDriver( /* We need to check all specified directories to be * sure to find the best driver for the device. */ - LPCTSTR Path; - for (Path = DevInstData->CustomSearchPath; *Path != '\0'; Path += _tcslen(Path) + 1) + LPCWSTR Path; + for (Path = DevInstData->CustomSearchPath; *Path != '\0'; Path += wcslen(Path) + 1) { TRACE("Search driver in %S\n", Path); - if (_tcslen(Path) == 2 && Path[1] == ':') + if (wcslen(Path) == 2 && Path[1] == ':') { if (SearchDriverRecursive(DevInstData, Path)) result = TRUE; @@ -449,13 +449,13 @@ PrepareFoldersToScan( IN BOOL IncludeCustomPath, IN HWND hwndCombo OPTIONAL) { - TCHAR drive[] = {'?',':',0}; + WCHAR drive[] = {'?',':',0}; DWORD dwDrives = 0; DWORD i; UINT nType; DWORD CustomTextLength = 0; DWORD LengthNeeded = 0; - LPTSTR Buffer; + LPWSTR Buffer; /* Calculate length needed to store the search paths */ if (IncludeRemovableDevices) @@ -465,7 +465,7 @@ PrepareFoldersToScan( { if (dwDrives & i) { - nType = GetDriveType(drive); + nType = GetDriveTypeW(drive); if (nType == DRIVE_REMOVABLE || nType == DRIVE_CDROM) { LengthNeeded += 3; @@ -484,7 +484,7 @@ PrepareFoldersToScan( DevInstData->CustomSearchPath = Buffer = HeapAlloc( GetProcessHeap(), 0, - (LengthNeeded + 1) * sizeof(TCHAR)); + (LengthNeeded + 1) * sizeof(WCHAR)); if (!Buffer) { TRACE("HeapAlloc() failed\n"); @@ -499,19 +499,19 @@ PrepareFoldersToScan( { if (dwDrives & i) { - nType = GetDriveType(drive); + nType = GetDriveTypeW(drive); if (nType == DRIVE_REMOVABLE || nType == DRIVE_CDROM) { - Buffer += 1 + _stprintf(Buffer, drive); + Buffer += 1 + swprintf(Buffer, drive); } } } } if (IncludeCustomPath) { - Buffer += 1 + ComboBox_GetText(hwndCombo, Buffer, CustomTextLength); + Buffer += 1 + GetWindowTextW(hwndCombo, Buffer, CustomTextLength); } - *Buffer = _T('\0'); + *Buffer = '\0'; return TRUE; } @@ -522,7 +522,7 @@ InstallCurrentDriver( { BOOL ret; - TRACE("Installing driver %S: %S\n", DevInstData->drvInfoData.MfgName, DevInstData->drvInfoData.Description); + TRACE("Installing driver %s: %s\n", DevInstData->drvInfoData.MfgName, DevInstData->drvInfoData.Description); ret = SetupDiCallClassInstaller( DIF_SELECTBESTCOMPATDRV, @@ -733,7 +733,7 @@ DevInstallW( } } - TRACE("Installing %S (%S)\n", DevInstData->buffer, InstanceId); + TRACE("Installing %s (%S)\n", DevInstData->buffer, InstanceId); /* Search driver in default location and removable devices */ if (!PrepareFoldersToScan(DevInstData, FALSE, FALSE, NULL)) diff --git a/reactos/dll/win32/newdev/newdev.rbuild b/reactos/dll/win32/newdev/newdev.rbuild index 744940103a6..49527a14323 100644 --- a/reactos/dll/win32/newdev/newdev.rbuild +++ b/reactos/dll/win32/newdev/newdev.rbuild @@ -1,7 +1,5 @@ . - - 0x0600 0x0501 diff --git a/reactos/dll/win32/newdev/newdev_private.h b/reactos/dll/win32/newdev/newdev_private.h index 7ec6c44d8f1..c31e98afcbf 100644 --- a/reactos/dll/win32/newdev/newdev_private.h +++ b/reactos/dll/win32/newdev/newdev_private.h @@ -1,6 +1,7 @@ #ifndef __NEWDEV_PRIVATE_H #define __NEWDEV_PRIVATE_H +#define COBJMACROS #include #include #include @@ -9,7 +10,6 @@ #include #include #include -#include #include #include @@ -29,7 +29,7 @@ typedef struct _DEVINSTDATA SP_DEVINFO_DATA devInfoData; SP_DRVINFO_DATA drvInfoData; - LPTSTR CustomSearchPath; /* MULTI_SZ string */ + LPWSTR CustomSearchPath; /* MULTI_SZ string */ } DEVINSTDATA, *PDEVINSTDATA; #define WM_SEARCH_FINISHED (WM_USER + 10) diff --git a/reactos/dll/win32/newdev/wizard.c b/reactos/dll/win32/newdev/wizard.c index cd2e59105a9..881b9941c73 100644 --- a/reactos/dll/win32/newdev/wizard.c +++ b/reactos/dll/win32/newdev/wizard.c @@ -237,8 +237,8 @@ PopulateCustomPathCombo( HKEY hKey = NULL; DWORD dwRegType; DWORD dwPathLength; - LPTSTR Buffer = NULL; - LPCTSTR Path; + LPWSTR Buffer = NULL; + LPCWSTR Path; LONG rc; (void)ComboBox_ResetContent(hwndCombo); @@ -255,9 +255,9 @@ PopulateCustomPathCombo( TRACE("RegOpenKeyEx() failed with error 0x%lx\n", rc); goto cleanup; } - rc = RegQueryValueEx( + rc = RegQueryValueExW( hKey, - _T("Installation Sources"), + L"Installation Sources", NULL, &dwRegType, NULL, @@ -269,15 +269,15 @@ PopulateCustomPathCombo( } /* Allocate enough space to add 2 NULL chars at the end of the string */ - Buffer = HeapAlloc(GetProcessHeap(), 0, dwPathLength + 2 * sizeof(TCHAR)); + Buffer = HeapAlloc(GetProcessHeap(), 0, dwPathLength + 2 * sizeof(WCHAR)); if (!Buffer) { TRACE("HeapAlloc() failed\n"); goto cleanup; } - rc = RegQueryValueEx( + rc = RegQueryValueExW( hKey, - _T("Installation Sources"), + L"Installation Sources", NULL, NULL, (LPBYTE)Buffer, @@ -290,7 +290,7 @@ PopulateCustomPathCombo( Buffer[dwPathLength] = Buffer[dwPathLength + 1] = '\0'; /* Populate combo box */ - for (Path = Buffer; *Path; Path += _tcslen(Path) + 1) + for (Path = Buffer; *Path; Path += wcslen(Path) + 1) { (void)ComboBox_AddString(hwndCombo, Path); if (Path == Buffer) @@ -307,10 +307,10 @@ static VOID SaveCustomPath( IN HWND hwndCombo) { - LPTSTR CustomPath = NULL; + LPWSTR CustomPath = NULL; DWORD CustomPathLength; - LPTSTR Buffer = NULL; - LPTSTR pBuffer; /* Pointer into Buffer */ + LPWSTR Buffer = NULL; + LPWSTR pBuffer; /* Pointer into Buffer */ int ItemsCount, Length; DWORD i; DWORD TotalLength = 0; @@ -320,13 +320,13 @@ SaveCustomPath( /* Get custom path */ Length = ComboBox_GetTextLength(hwndCombo) + 1; - CustomPath = HeapAlloc(GetProcessHeap(), 0, Length * sizeof(TCHAR)); + CustomPath = HeapAlloc(GetProcessHeap(), 0, Length * sizeof(WCHAR)); if (!CustomPath) { TRACE("HeapAlloc() failed\n"); goto cleanup; } - CustomPathLength = ComboBox_GetText(hwndCombo, CustomPath, Length) + 1; + CustomPathLength = GetWindowTextW(hwndCombo, CustomPath, Length) + 1; /* Calculate length of the buffer */ ItemsCount = ComboBox_GetCount(hwndCombo); @@ -348,7 +348,7 @@ SaveCustomPath( TotalLength++; /* Final NULL char */ /* Allocate buffer */ - Buffer = HeapAlloc(GetProcessHeap(), 0, (CustomPathLength + TotalLength + 1) * sizeof(TCHAR)); + Buffer = HeapAlloc(GetProcessHeap(), 0, (CustomPathLength + TotalLength + 1) * sizeof(WCHAR)); if (!Buffer) { TRACE("HeapAlloc() failed\n"); @@ -365,7 +365,7 @@ SaveCustomPath( TRACE("ComboBox_GetLBText() failed\n"); goto cleanup; } - else if (UseCustomPath && _tcsicmp(CustomPath, pBuffer) == 0) + else if (UseCustomPath && wcsicmp(CustomPath, pBuffer) == 0) UseCustomPath = FALSE; pBuffer += 1 + Length; } @@ -378,7 +378,7 @@ SaveCustomPath( } TotalLength += CustomPathLength; - _tcscpy(Buffer, CustomPath); + wcscpy(Buffer, CustomPath); /* Save the buffer */ /* RegSetKeyValue would have been better... */ @@ -393,13 +393,13 @@ SaveCustomPath( TRACE("RegOpenKeyEx() failed with error 0x%lx\n", rc); goto cleanup; } - rc = RegSetValueEx( + rc = RegSetValueExW( hKey, - _T("Installation Sources"), + L"Installation Sources", 0, REG_MULTI_SZ, (const BYTE*)Buffer, - TotalLength * sizeof(TCHAR)); + TotalLength * sizeof(WCHAR)); if (rc != ERROR_SUCCESS) { TRACE("RegSetValueEx() failed with error 0x%lx\n", rc); @@ -595,21 +595,20 @@ CHSourceDlgProc( pidl = SHBrowseForFolder(&bi); if (pidl) { - TCHAR Directory[MAX_PATH]; + WCHAR Directory[MAX_PATH]; IMalloc* malloc; - if (SHGetPathFromIDList(pidl, Directory)) + if (SHGetPathFromIDListW(pidl, Directory)) { /* Set the IDC_COMBO_PATH text */ - ComboBox_SetText(GetDlgItem(hwndDlg, IDC_COMBO_PATH), Directory); + SetWindowTextW(GetDlgItem(hwndDlg, IDC_COMBO_PATH), Directory); } /* Free memory, if possible */ if (SUCCEEDED(SHGetMalloc(&malloc))) { - FIXME("Memory leak!\n"); - //malloc->Free(pidl); - //malloc->Release(); + IMalloc_Free(malloc, pidl); + IMalloc_Release(malloc); } return TRUE; } @@ -1223,23 +1222,23 @@ FinishDlgProc( static HFONT CreateTitleFont(VOID) { - NONCLIENTMETRICS ncm; - LOGFONT LogFont; + NONCLIENTMETRICSW ncm; + LOGFONTW LogFont; HDC hdc; INT FontSize; HFONT hFont; - ncm.cbSize = sizeof(NONCLIENTMETRICS); + ncm.cbSize = sizeof(NONCLIENTMETRICSW); SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, &ncm, 0); LogFont = ncm.lfMessageFont; LogFont.lfWeight = FW_BOLD; - _tcscpy(LogFont.lfFaceName, _T("MS Shell Dlg")); + wcscpy(LogFont.lfFaceName, L"MS Shell Dlg"); hdc = GetDC(NULL); FontSize = 12; LogFont.lfHeight = 0 - GetDeviceCaps (hdc, LOGPIXELSY) * FontSize / 72; - hFont = CreateFontIndirect(&LogFont); + hFont = CreateFontIndirectW(&LogFont); ReleaseDC(NULL, hdc); return hFont;