mirror of
https://github.com/reactos/reactos.git
synced 2024-09-28 05:26:58 +00:00
[SHELL32]
- Display file size in bytes in file properties dialog - Don't use ULONGLONG if ULONG is enough - Change LARGE_INTEGER to ULARGE_INTEGER where it makes sense - Fix calculation of file size in CountFolderAndFiles - WM_GETTEXT receives size in bytes (not characters count) - Use Get(Set)DlgItemTextW instead of SendDlgItemMessageW Patch by Carlo Bramix. Improvements by me. See issue #6294 for more details. svn path=/trunk/; revision=54529
This commit is contained in:
parent
e86ebe01cc
commit
6f7115b541
|
@ -119,9 +119,9 @@ INT_PTR CALLBACK PickIconProc(HWND hwndDlg,
|
||||||
pIconContext->hDlgCtrl = GetDlgItem(hwndDlg, IDC_PICKICON_LIST);
|
pIconContext->hDlgCtrl = GetDlgItem(hwndDlg, IDC_PICKICON_LIST);
|
||||||
EnumResourceNamesW(pIconContext->hLibrary, RT_ICON, EnumPickIconResourceProc, (LPARAM)pIconContext);
|
EnumResourceNamesW(pIconContext->hLibrary, RT_ICON, EnumPickIconResourceProc, (LPARAM)pIconContext);
|
||||||
if (PathUnExpandEnvStringsW(pIconContext->szName, szText, MAX_PATH))
|
if (PathUnExpandEnvStringsW(pIconContext->szName, szText, MAX_PATH))
|
||||||
SendDlgItemMessageW(hwndDlg, IDC_EDIT_PATH, WM_SETTEXT, 0, (LPARAM)szText);
|
SetDlgItemTextW(hwndDlg, IDC_EDIT_PATH, szText);
|
||||||
else
|
else
|
||||||
SendDlgItemMessageW(hwndDlg, IDC_EDIT_PATH, WM_SETTEXT, 0, (LPARAM)pIconContext->szName);
|
SetDlgItemTextW(hwndDlg, IDC_EDIT_PATH, pIconContext->szName);
|
||||||
|
|
||||||
count = SendMessage(pIconContext->hDlgCtrl, LB_GETCOUNT, 0, 0);
|
count = SendMessage(pIconContext->hDlgCtrl, LB_GETCOUNT, 0, 0);
|
||||||
if (count != LB_ERR)
|
if (count != LB_ERR)
|
||||||
|
@ -138,7 +138,7 @@ INT_PTR CALLBACK PickIconProc(HWND hwndDlg,
|
||||||
case IDOK:
|
case IDOK:
|
||||||
index = SendMessageW(pIconContext->hDlgCtrl, LB_GETCURSEL, 0, 0);
|
index = SendMessageW(pIconContext->hDlgCtrl, LB_GETCURSEL, 0, 0);
|
||||||
pIconContext->Index = index;
|
pIconContext->Index = index;
|
||||||
SendDlgItemMessageW(hwndDlg, IDC_EDIT_PATH, WM_GETTEXT, MAX_PATH, (LPARAM)pIconContext->szName);
|
GetDlgItemTextW(hwndDlg, IDC_EDIT_PATH, pIconContext->szName, MAX_PATH);
|
||||||
DestroyIconList(pIconContext->hDlgCtrl);
|
DestroyIconList(pIconContext->hDlgCtrl);
|
||||||
EndDialog(hwndDlg, 1);
|
EndDialog(hwndDlg, 1);
|
||||||
break;
|
break;
|
||||||
|
@ -179,9 +179,9 @@ INT_PTR CALLBACK PickIconProc(HWND hwndDlg,
|
||||||
wcscpy(pIconContext->szName, szText);
|
wcscpy(pIconContext->szName, szText);
|
||||||
EnumResourceNamesW(pIconContext->hLibrary, RT_ICON, EnumPickIconResourceProc, (LPARAM)pIconContext);
|
EnumResourceNamesW(pIconContext->hLibrary, RT_ICON, EnumPickIconResourceProc, (LPARAM)pIconContext);
|
||||||
if (PathUnExpandEnvStringsW(pIconContext->szName, szText, MAX_PATH))
|
if (PathUnExpandEnvStringsW(pIconContext->szName, szText, MAX_PATH))
|
||||||
SendDlgItemMessageW(hwndDlg, IDC_EDIT_PATH, WM_SETTEXT, 0, (LPARAM)szText);
|
SetDlgItemTextW(hwndDlg, IDC_EDIT_PATH, szText);
|
||||||
else
|
else
|
||||||
SendDlgItemMessageW(hwndDlg, IDC_EDIT_PATH, WM_SETTEXT, 0, (LPARAM)pIconContext->szName);
|
SetDlgItemTextW(hwndDlg, IDC_EDIT_PATH, pIconContext->szName);
|
||||||
|
|
||||||
SendMessageW(pIconContext->hDlgCtrl, LB_SETCURSEL, 0, 0);
|
SendMessageW(pIconContext->hDlgCtrl, LB_SETCURSEL, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -276,7 +276,7 @@ ChkDskDlg(
|
||||||
|
|
||||||
|
|
||||||
static
|
static
|
||||||
ULONGLONG
|
ULONG
|
||||||
GetFreeBytesShare(ULONGLONG TotalNumberOfFreeBytes, ULONGLONG TotalNumberOfBytes)
|
GetFreeBytesShare(ULONGLONG TotalNumberOfFreeBytes, ULONGLONG TotalNumberOfBytes)
|
||||||
{
|
{
|
||||||
ULONGLONG Temp;
|
ULONGLONG Temp;
|
||||||
|
@ -293,7 +293,7 @@ GetFreeBytesShare(ULONGLONG TotalNumberOfFreeBytes, ULONGLONG TotalNumberOfBytes
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return TotalNumberOfFreeBytes / Temp;
|
return (ULONG)(TotalNumberOfFreeBytes / Temp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -333,7 +333,7 @@ PaintStaticControls(HWND hwndDlg, LPDRAWITEMSTRUCT drawItem)
|
||||||
hBlueBrush = CreateSolidBrush(RGB(0, 0, 255));
|
hBlueBrush = CreateSolidBrush(RGB(0, 0, 255));
|
||||||
hMagBrush = CreateSolidBrush(RGB(255, 0, 255));
|
hMagBrush = CreateSolidBrush(RGB(255, 0, 255));
|
||||||
|
|
||||||
SendDlgItemMessageW(hwndDlg, 14006, WM_GETTEXT, 20, (LPARAM)szBuffer);
|
GetDlgItemTextW(hwndDlg, 14006, szBuffer, 20);
|
||||||
Result = _wtoi(szBuffer);
|
Result = _wtoi(szBuffer);
|
||||||
|
|
||||||
CopyRect(&rect, &drawItem->rcItem);
|
CopyRect(&rect, &drawItem->rcItem);
|
||||||
|
@ -363,17 +363,17 @@ InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR * szDrive)
|
||||||
BOOL ret;
|
BOOL ret;
|
||||||
UINT DriveType;
|
UINT DriveType;
|
||||||
ULARGE_INTEGER FreeBytesAvailable;
|
ULARGE_INTEGER FreeBytesAvailable;
|
||||||
LARGE_INTEGER TotalNumberOfFreeBytes;
|
ULARGE_INTEGER TotalNumberOfFreeBytes;
|
||||||
LARGE_INTEGER TotalNumberOfBytes;
|
ULARGE_INTEGER TotalNumberOfBytes;
|
||||||
|
|
||||||
ret = GetVolumeInformationW(szDrive, szVolumeName, MAX_PATH+1, NULL, &MaxComponentLength, &FileSystemFlags, FileSystemName, MAX_PATH+1);
|
ret = GetVolumeInformationW(szDrive, szVolumeName, MAX_PATH+1, NULL, &MaxComponentLength, &FileSystemFlags, FileSystemName, MAX_PATH+1);
|
||||||
if (ret)
|
if (ret)
|
||||||
{
|
{
|
||||||
/* set volume label */
|
/* set volume label */
|
||||||
SendDlgItemMessageW(hwndDlg, 14000, WM_SETTEXT, (WPARAM)NULL, (LPARAM)szVolumeName);
|
SetDlgItemTextW(hwndDlg, 14000, szVolumeName);
|
||||||
|
|
||||||
/* set filesystem type */
|
/* set filesystem type */
|
||||||
SendDlgItemMessageW(hwndDlg, 14002, WM_SETTEXT, (WPARAM)NULL, (LPARAM)FileSystemName);
|
SetDlgItemTextW(hwndDlg, 14002, FileSystemName);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -381,10 +381,10 @@ InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR * szDrive)
|
||||||
if (DriveType == DRIVE_FIXED || DriveType == DRIVE_CDROM)
|
if (DriveType == DRIVE_FIXED || DriveType == DRIVE_CDROM)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(GetDiskFreeSpaceExW(szDrive, &FreeBytesAvailable, (PULARGE_INTEGER)&TotalNumberOfBytes, (PULARGE_INTEGER)&TotalNumberOfFreeBytes))
|
if(GetDiskFreeSpaceExW(szDrive, &FreeBytesAvailable, &TotalNumberOfBytes, &TotalNumberOfFreeBytes))
|
||||||
{
|
{
|
||||||
WCHAR szResult[128];
|
WCHAR szResult[128];
|
||||||
LONGLONG Result;
|
ULONG Result;
|
||||||
HANDLE hVolume;
|
HANDLE hVolume;
|
||||||
DWORD BytesReturned = 0;
|
DWORD BytesReturned = 0;
|
||||||
|
|
||||||
|
@ -394,7 +394,7 @@ InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR * szDrive)
|
||||||
{
|
{
|
||||||
ret = DeviceIoControl(hVolume, IOCTL_DISK_GET_LENGTH_INFO, NULL, 0, (LPVOID)&TotalNumberOfBytes, sizeof(ULARGE_INTEGER), &BytesReturned, NULL);
|
ret = DeviceIoControl(hVolume, IOCTL_DISK_GET_LENGTH_INFO, NULL, 0, (LPVOID)&TotalNumberOfBytes, sizeof(ULARGE_INTEGER), &BytesReturned, NULL);
|
||||||
if (ret && StrFormatByteSizeW(TotalNumberOfBytes.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
if (ret && StrFormatByteSizeW(TotalNumberOfBytes.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
||||||
SendDlgItemMessageW(hwndDlg, 14007, WM_SETTEXT, (WPARAM)NULL, (LPARAM)szResult);
|
SetDlgItemTextW(hwndDlg, 14007, szResult);
|
||||||
|
|
||||||
CloseHandle(hVolume);
|
CloseHandle(hVolume);
|
||||||
}
|
}
|
||||||
|
@ -402,35 +402,35 @@ InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR * szDrive)
|
||||||
TRACE("szResult %s hVOlume %p ret %d LengthInformation %ul Bytesreturned %d\n", debugstr_w(szResult), hVolume, ret, TotalNumberOfBytes.QuadPart, BytesReturned);
|
TRACE("szResult %s hVOlume %p ret %d LengthInformation %ul Bytesreturned %d\n", debugstr_w(szResult), hVolume, ret, TotalNumberOfBytes.QuadPart, BytesReturned);
|
||||||
|
|
||||||
if (StrFormatByteSizeW(TotalNumberOfBytes.QuadPart - FreeBytesAvailable.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
if (StrFormatByteSizeW(TotalNumberOfBytes.QuadPart - FreeBytesAvailable.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
||||||
SendDlgItemMessageW(hwndDlg, 14003, WM_SETTEXT, (WPARAM)NULL, (LPARAM)szResult);
|
SetDlgItemTextW(hwndDlg, 14003, szResult);
|
||||||
|
|
||||||
if (StrFormatByteSizeW(FreeBytesAvailable.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
if (StrFormatByteSizeW(FreeBytesAvailable.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
|
||||||
SendDlgItemMessageW(hwndDlg, 14005, WM_SETTEXT, (WPARAM)NULL, (LPARAM)szResult);
|
SetDlgItemTextW(hwndDlg, 14005, szResult);
|
||||||
|
|
||||||
Result = GetFreeBytesShare(TotalNumberOfFreeBytes.QuadPart, TotalNumberOfBytes.QuadPart);
|
Result = GetFreeBytesShare(TotalNumberOfFreeBytes.QuadPart, TotalNumberOfBytes.QuadPart);
|
||||||
/* set free bytes percentage */
|
/* set free bytes percentage */
|
||||||
swprintf(szResult, L"%02d%%", Result);
|
swprintf(szResult, L"%02u%%", Result);
|
||||||
SendDlgItemMessageW(hwndDlg, 14006, WM_SETTEXT, (WPARAM)0, (LPARAM)szResult);
|
SetDlgItemTextW(hwndDlg, 14006, szResult);
|
||||||
/* store used share amount */
|
/* store used share amount */
|
||||||
Result = 100 - Result;
|
Result = 100 - Result;
|
||||||
swprintf(szResult, L"%02d%%", Result);
|
swprintf(szResult, L"%02u%%", Result);
|
||||||
SendDlgItemMessageW(hwndDlg, 14004, WM_SETTEXT, (WPARAM)0, (LPARAM)szResult);
|
SetDlgItemTextW(hwndDlg, 14004, szResult);
|
||||||
if (DriveType == DRIVE_FIXED)
|
if (DriveType == DRIVE_FIXED)
|
||||||
{
|
{
|
||||||
if (LoadStringW(shell32_hInstance, IDS_DRIVE_FIXED, szBuffer, sizeof(szBuffer) / sizeof(WCHAR)))
|
if (LoadStringW(shell32_hInstance, IDS_DRIVE_FIXED, szBuffer, sizeof(szBuffer) / sizeof(WCHAR)))
|
||||||
SendDlgItemMessageW(hwndDlg, 14001, WM_SETTEXT, (WPARAM)0, (LPARAM)szBuffer);
|
SetDlgItemTextW(hwndDlg, 14001, szBuffer);
|
||||||
}
|
}
|
||||||
else /* DriveType == DRIVE_CDROM) */
|
else /* DriveType == DRIVE_CDROM) */
|
||||||
{
|
{
|
||||||
if (LoadStringW(shell32_hInstance, IDS_DRIVE_CDROM, szBuffer, sizeof(szBuffer) / sizeof(WCHAR)))
|
if (LoadStringW(shell32_hInstance, IDS_DRIVE_CDROM, szBuffer, sizeof(szBuffer) / sizeof(WCHAR)))
|
||||||
SendDlgItemMessageW(hwndDlg, 14001, WM_SETTEXT, (WPARAM)0, (LPARAM)szBuffer);
|
SetDlgItemTextW(hwndDlg, 14001, szBuffer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* set drive description */
|
/* set drive description */
|
||||||
SendDlgItemMessageW(hwndDlg, 14009, WM_GETTEXT, (WPARAM)50, (LPARAM)szFormat);
|
GetDlgItemTextW(hwndDlg, 14009, szFormat, 50);
|
||||||
swprintf(szBuffer, szFormat, szDrive);
|
swprintf(szBuffer, szFormat, szDrive);
|
||||||
SendDlgItemMessageW(hwndDlg, 14009, WM_SETTEXT, (WPARAM)NULL, (LPARAM)szBuffer);
|
SetDlgItemTextW(hwndDlg, 14009, szBuffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -503,7 +503,7 @@ DriveGeneralDlg(
|
||||||
if (lppsn->hdr.code == PSN_APPLY)
|
if (lppsn->hdr.code == PSN_APPLY)
|
||||||
{
|
{
|
||||||
lpstr = (LPWSTR)GetWindowLongPtr(hwndDlg, DWLP_USER);
|
lpstr = (LPWSTR)GetWindowLongPtr(hwndDlg, DWLP_USER);
|
||||||
if (lpstr && SendDlgItemMessageW(hwndDlg, 14000, WM_GETTEXT, sizeof(szPath)/sizeof(WCHAR), (LPARAM)szPath))
|
if (lpstr && GetDlgItemTextW(hwndDlg, 14000, szPath, sizeof(szPath)/sizeof(WCHAR)))
|
||||||
{
|
{
|
||||||
szPath[(sizeof(szPath)/sizeof(WCHAR))-1] = L'\0';
|
szPath[(sizeof(szPath)/sizeof(WCHAR))-1] = L'\0';
|
||||||
SetVolumeLabelW(lpstr, szPath);
|
SetVolumeLabelW(lpstr, szPath);
|
||||||
|
@ -943,7 +943,7 @@ InitializeFormatDriveDlg(HWND hwndDlg, PFORMAT_DRIVE_CONTEXT pContext)
|
||||||
{
|
{
|
||||||
/* set volume label */
|
/* set volume label */
|
||||||
szText[(sizeof(szText)/sizeof(WCHAR))-1] = L'\0';
|
szText[(sizeof(szText)/sizeof(WCHAR))-1] = L'\0';
|
||||||
SendDlgItemMessageW(hwndDlg, 28679, WM_SETTEXT, 0, (LPARAM)&szText[Length+1]);
|
SetDlgItemTextW(hwndDlg, 28679, &szText[Length+1]);
|
||||||
}
|
}
|
||||||
Length += TempLength + 1;
|
Length += TempLength + 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ typedef struct
|
||||||
{
|
{
|
||||||
DWORD cFiles;
|
DWORD cFiles;
|
||||||
DWORD cFolder;
|
DWORD cFolder;
|
||||||
LARGE_INTEGER bSize;
|
ULARGE_INTEGER bSize;
|
||||||
HWND hwndDlg;
|
HWND hwndDlg;
|
||||||
WCHAR szFolderPath[MAX_PATH];
|
WCHAR szFolderPath[MAX_PATH];
|
||||||
}FOLDER_PROPERTIES_CONTEXT, *PFOLDER_PROPERTIES_CONTEXT;
|
}FOLDER_PROPERTIES_CONTEXT, *PFOLDER_PROPERTIES_CONTEXT;
|
||||||
|
@ -452,7 +452,7 @@ FolderOptionsFileTypesDlg(
|
||||||
/* format buffer */
|
/* format buffer */
|
||||||
swprintf(Buffer, FormatBuffer, &pItem->FileExtension[1]);
|
swprintf(Buffer, FormatBuffer, &pItem->FileExtension[1]);
|
||||||
/* update dialog */
|
/* update dialog */
|
||||||
SendDlgItemMessageW(hwndDlg, 14003, WM_SETTEXT, 0, (LPARAM)Buffer);
|
SetDlgItemTextW(hwndDlg, 14003, Buffer);
|
||||||
|
|
||||||
if (!LoadStringW(shell32_hInstance, IDS_FILE_DETAILSADV, FormatBuffer, sizeof(FormatBuffer) / sizeof(WCHAR)))
|
if (!LoadStringW(shell32_hInstance, IDS_FILE_DETAILSADV, FormatBuffer, sizeof(FormatBuffer) / sizeof(WCHAR)))
|
||||||
{
|
{
|
||||||
|
@ -462,7 +462,7 @@ FolderOptionsFileTypesDlg(
|
||||||
/* format buffer */
|
/* format buffer */
|
||||||
swprintf(Buffer, FormatBuffer, &pItem->FileExtension[1], &pItem->FileDescription[0], &pItem->FileDescription[0]);
|
swprintf(Buffer, FormatBuffer, &pItem->FileExtension[1], &pItem->FileDescription[0], &pItem->FileDescription[0]);
|
||||||
/* update dialog */
|
/* update dialog */
|
||||||
SendDlgItemMessageW(hwndDlg, 14007, WM_SETTEXT, 0, (LPARAM)Buffer);
|
SetDlgItemTextW(hwndDlg, 14007, Buffer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -559,6 +559,7 @@ CountFolderAndFiles(LPVOID lParam)
|
||||||
LPWSTR pOffset;
|
LPWSTR pOffset;
|
||||||
BOOL ret;
|
BOOL ret;
|
||||||
PFOLDER_PROPERTIES_CONTEXT pContext = (PFOLDER_PROPERTIES_CONTEXT) lParam;
|
PFOLDER_PROPERTIES_CONTEXT pContext = (PFOLDER_PROPERTIES_CONTEXT) lParam;
|
||||||
|
ULARGE_INTEGER FileSize;
|
||||||
|
|
||||||
pOffset = PathAddBackslashW(pContext->szFolderPath);
|
pOffset = PathAddBackslashW(pContext->szFolderPath);
|
||||||
if (!pOffset)
|
if (!pOffset)
|
||||||
|
@ -589,9 +590,11 @@ CountFolderAndFiles(LPVOID lParam)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
FileSize.u.LowPart = FindData.nFileSizeLow;
|
||||||
|
FileSize.u.HighPart = FindData.nFileSizeHigh;
|
||||||
|
|
||||||
pContext->cFiles++;
|
pContext->cFiles++;
|
||||||
pContext->bSize.u.LowPart += FindData.nFileSizeLow;
|
pContext->bSize.QuadPart += FileSize.QuadPart;
|
||||||
pContext->bSize.u.HighPart += FindData.nFileSizeHigh;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (GetLastError() == ERROR_NO_MORE_FILES)
|
else if (GetLastError() == ERROR_NO_MORE_FILES)
|
||||||
|
@ -622,7 +625,7 @@ InitializeFolderGeneralDlg(PFOLDER_PROPERTIES_CONTEXT pContext)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* set folder name */
|
/* set folder name */
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14001, WM_SETTEXT, 0, (LPARAM) (pFolderName + 1));
|
SetDlgItemTextW(pContext->hwndDlg, 14001, pFolderName + 1);
|
||||||
/* set folder location */
|
/* set folder location */
|
||||||
pFolderName[0] = L'\0';
|
pFolderName[0] = L'\0';
|
||||||
if (wcslen(pContext->szFolderPath) == 2)
|
if (wcslen(pContext->szFolderPath) == 2)
|
||||||
|
@ -630,11 +633,11 @@ InitializeFolderGeneralDlg(PFOLDER_PROPERTIES_CONTEXT pContext)
|
||||||
/* folder is located at root */
|
/* folder is located at root */
|
||||||
WCHAR szDrive[4] = {L'C',L':',L'\\',L'\0'};
|
WCHAR szDrive[4] = {L'C',L':',L'\\',L'\0'};
|
||||||
szDrive[0] = pContext->szFolderPath[0];
|
szDrive[0] = pContext->szFolderPath[0];
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14007, WM_SETTEXT, 0, (LPARAM) szDrive);
|
SetDlgItemTextW(pContext->hwndDlg, 14007, szDrive);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14007, WM_SETTEXT, 0, (LPARAM) pContext->szFolderPath);
|
SetDlgItemTextW(pContext->hwndDlg, 14007, pContext->szFolderPath);
|
||||||
}
|
}
|
||||||
pFolderName[0] = L'\\';
|
pFolderName[0] = L'\\';
|
||||||
/* get folder properties */
|
/* get folder properties */
|
||||||
|
@ -656,7 +659,7 @@ InitializeFolderGeneralDlg(PFOLDER_PROPERTIES_CONTEXT pContext)
|
||||||
{
|
{
|
||||||
FileTimeToSystemTime(&ft, &dt);
|
FileTimeToSystemTime(&ft, &dt);
|
||||||
swprintf (szBuffer, wFormat, dt.wDay, dt.wMonth, dt.wYear, dt.wHour, dt.wMinute);
|
swprintf (szBuffer, wFormat, dt.wDay, dt.wMonth, dt.wYear, dt.wHour, dt.wMinute);
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14015, WM_SETTEXT, 0, (LPARAM) szBuffer);
|
SetDlgItemTextW(pContext->hwndDlg, 14015, szBuffer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* now enumerate enumerate contents */
|
/* now enumerate enumerate contents */
|
||||||
|
@ -667,12 +670,12 @@ InitializeFolderGeneralDlg(PFOLDER_PROPERTIES_CONTEXT pContext)
|
||||||
LoadStringW(shell32_hInstance, IDS_FILE_FOLDER, szFormat, sizeof(szFormat)/sizeof(WCHAR));
|
LoadStringW(shell32_hInstance, IDS_FILE_FOLDER, szFormat, sizeof(szFormat)/sizeof(WCHAR));
|
||||||
szFormat[(sizeof(szFormat)/sizeof(WCHAR))-1] = L'\0';
|
szFormat[(sizeof(szFormat)/sizeof(WCHAR))-1] = L'\0';
|
||||||
swprintf(szBuffer, szFormat, pContext->cFiles, pContext->cFolder);
|
swprintf(szBuffer, szFormat, pContext->cFiles, pContext->cFolder);
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14011, WM_SETTEXT, 0, (LPARAM) szBuffer);
|
SetDlgItemTextW(pContext->hwndDlg, 14011, szBuffer);
|
||||||
|
|
||||||
if (StrFormatByteSizeW(pContext->bSize.QuadPart, szBuffer, sizeof(szBuffer)/sizeof(WCHAR)))
|
if (SH_FormatFileSizeWithBytes(&pContext->bSize, szBuffer, sizeof(szBuffer)/sizeof(WCHAR)))
|
||||||
{
|
{
|
||||||
/* store folder size */
|
/* store folder size */
|
||||||
SendDlgItemMessageW(pContext->hwndDlg, 14009, WM_SETTEXT, 0, (LPARAM) szBuffer);
|
SetDlgItemTextW(pContext->hwndDlg, 14009, szBuffer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -70,24 +70,125 @@ static LONG SH_GetAssociatedApplication(WCHAR *fileext, WCHAR *wAssocApp)
|
||||||
|
|
||||||
static LONG SH_FileGeneralOpensWith(HWND hwndDlg, WCHAR *fileext)
|
static LONG SH_FileGeneralOpensWith(HWND hwndDlg, WCHAR *fileext)
|
||||||
{
|
{
|
||||||
HWND hDlgCtrl;
|
|
||||||
LONG result;
|
LONG result;
|
||||||
WCHAR wAppName[MAX_PATH] = {0};
|
WCHAR wAppName[MAX_PATH] = {0};
|
||||||
WCHAR wAssocApp[MAX_PATH] = {0};
|
WCHAR wAssocApp[MAX_PATH] = {0};
|
||||||
|
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14007);
|
|
||||||
result = SH_GetAssociatedApplication(fileext, wAssocApp);
|
result = SH_GetAssociatedApplication(fileext, wAssocApp);
|
||||||
|
|
||||||
if (result == ERROR_SUCCESS)
|
if (result == ERROR_SUCCESS)
|
||||||
{
|
{
|
||||||
_wsplitpath(wAssocApp, NULL, NULL, wAppName, NULL);
|
_wsplitpath(wAssocApp, NULL, NULL, wAppName, NULL);
|
||||||
|
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)wAppName);
|
SetDlgItemTextW(hwndDlg, 14007, wAppName);
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*************************************************************************
|
||||||
|
*
|
||||||
|
* SH_FormatFileSizeWithBytes
|
||||||
|
*
|
||||||
|
* Format a size in bytes to string.
|
||||||
|
*
|
||||||
|
* lpQwSize = Pointer to 64bit large integer to format
|
||||||
|
* pszBuf = Buffer to fill with output string
|
||||||
|
* cchBuf = size of pszBuf in characters
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
LPWSTR SH_FormatFileSizeWithBytes(PULARGE_INTEGER lpQwSize, LPWSTR pszBuf, UINT cchBuf)
|
||||||
|
{
|
||||||
|
NUMBERFMTW nf;
|
||||||
|
WCHAR szNumber[24];
|
||||||
|
WCHAR szDecimalSep[8];
|
||||||
|
WCHAR szThousandSep[8];
|
||||||
|
WCHAR szGrouping[12];
|
||||||
|
int Len, cchFormatted, i;
|
||||||
|
size_t cchRemaining;
|
||||||
|
LPWSTR Ptr;
|
||||||
|
|
||||||
|
// Try to build first Format byte string
|
||||||
|
if (StrFormatByteSizeW(lpQwSize->QuadPart, pszBuf, cchBuf) == NULL)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
// If there is less bytes than 1KB, we have nothing to do
|
||||||
|
if (lpQwSize->QuadPart < 1024)
|
||||||
|
return pszBuf;
|
||||||
|
|
||||||
|
// Print the number in uniform mode
|
||||||
|
swprintf(szNumber, L"%I64u", lpQwSize->QuadPart);
|
||||||
|
|
||||||
|
// Get system strings for decimal and thousand separators.
|
||||||
|
GetLocaleInfoW(LOCALE_USER_DEFAULT, LOCALE_SDECIMAL, szDecimalSep, sizeof(szDecimalSep)/sizeof(*szDecimalSep));
|
||||||
|
GetLocaleInfoW(LOCALE_USER_DEFAULT, LOCALE_STHOUSAND, szThousandSep, sizeof(szThousandSep)/sizeof(*szThousandSep));
|
||||||
|
|
||||||
|
// Initialize format for printing the number in bytes
|
||||||
|
ZeroMemory(&nf, sizeof(nf));
|
||||||
|
nf.NumDigits = 0;
|
||||||
|
nf.LeadingZero = 0;
|
||||||
|
nf.Grouping = 0;
|
||||||
|
nf.lpDecimalSep = szDecimalSep;
|
||||||
|
nf.lpThousandSep = szThousandSep;
|
||||||
|
nf.NegativeOrder = 0;
|
||||||
|
|
||||||
|
// Get system string for groups separator
|
||||||
|
Len = GetLocaleInfoW(LOCALE_USER_DEFAULT,
|
||||||
|
LOCALE_SGROUPING,
|
||||||
|
szGrouping,
|
||||||
|
sizeof(szGrouping)/sizeof(*szGrouping));
|
||||||
|
|
||||||
|
// Convert grouping specs from string to integer
|
||||||
|
for (i = 0; i < Len; i++)
|
||||||
|
{
|
||||||
|
WCHAR wch = szGrouping[i];
|
||||||
|
|
||||||
|
if (wch >= L'0' && wch <= L'9')
|
||||||
|
nf.Grouping = nf.Grouping * 10 + (wch - L'0');
|
||||||
|
else if (wch != L';')
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((nf.Grouping % 10) == 0)
|
||||||
|
nf.Grouping /= 10;
|
||||||
|
else
|
||||||
|
nf.Grouping *= 10;
|
||||||
|
|
||||||
|
// Concate " (" at the end of buffer
|
||||||
|
Len = wcslen(pszBuf);
|
||||||
|
Ptr = pszBuf + Len;
|
||||||
|
cchRemaining = cchBuf - Len;
|
||||||
|
StringCchCopyExW(Ptr, cchRemaining, L" (", &Ptr, &cchRemaining, 0);
|
||||||
|
|
||||||
|
// Save formatted number of bytes in buffer
|
||||||
|
cchFormatted = GetNumberFormatW(LOCALE_USER_DEFAULT,
|
||||||
|
0,
|
||||||
|
szNumber,
|
||||||
|
&nf,
|
||||||
|
Ptr,
|
||||||
|
cchRemaining);
|
||||||
|
|
||||||
|
if (cchFormatted == 0)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
// cchFormatted is number of characters including NULL - make it a real length
|
||||||
|
--cchFormatted;
|
||||||
|
|
||||||
|
// Copy ' ' to buffer
|
||||||
|
Ptr += cchFormatted;
|
||||||
|
cchRemaining -= cchFormatted;
|
||||||
|
StringCchCopyExW(Ptr, cchRemaining, L" ", &Ptr, &cchRemaining, 0);
|
||||||
|
|
||||||
|
// Copy 'bytes' string and remaining ')'
|
||||||
|
Len = LoadStringW(shell32_hInstance, IDS_BYTES_FORMAT, Ptr, cchRemaining);
|
||||||
|
Ptr += Len;
|
||||||
|
cchRemaining -= Len;
|
||||||
|
StringCchCopy(Ptr, cchRemaining, L")");
|
||||||
|
|
||||||
|
return pszBuf;
|
||||||
|
}
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
*
|
*
|
||||||
* SH_CreatePropertySheetPage [Internal]
|
* SH_CreatePropertySheetPage [Internal]
|
||||||
|
@ -309,7 +410,6 @@ SH_FileGeneralSetText(HWND hwndDlg, WCHAR *lpstr)
|
||||||
int plength;
|
int plength;
|
||||||
WCHAR *lpdir;
|
WCHAR *lpdir;
|
||||||
WCHAR buff[MAX_PATH];
|
WCHAR buff[MAX_PATH];
|
||||||
HWND hDlgCtrl;
|
|
||||||
|
|
||||||
if (lpstr == NULL)
|
if (lpstr == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -330,16 +430,14 @@ SH_FileGeneralSetText(HWND hwndDlg, WCHAR *lpstr)
|
||||||
wcscat(buff, L"\\");
|
wcscat(buff, L"\\");
|
||||||
}
|
}
|
||||||
|
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14009);
|
SetDlgItemTextW(hwndDlg, 14009, buff);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)buff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flength > 1)
|
if (flength > 1)
|
||||||
{
|
{
|
||||||
/* text filename field */
|
/* text filename field */
|
||||||
wcsncpy(buff, &lpdir[1], flength);
|
wcsncpy(buff, &lpdir[1], flength);
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14001);
|
SetDlgItemTextW(hwndDlg, 14001, buff);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)buff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -362,7 +460,6 @@ SH_FileGeneralSetFileSizeTime(HWND hwndDlg, WCHAR *lpfilename, PULARGE_INTEGER l
|
||||||
FILETIME accessed_time;
|
FILETIME accessed_time;
|
||||||
FILETIME write_time;
|
FILETIME write_time;
|
||||||
WCHAR resultstr[MAX_PATH];
|
WCHAR resultstr[MAX_PATH];
|
||||||
HWND hDlgCtrl;
|
|
||||||
LARGE_INTEGER file_size;
|
LARGE_INTEGER file_size;
|
||||||
|
|
||||||
if (lpfilename == NULL)
|
if (lpfilename == NULL)
|
||||||
|
@ -392,20 +489,17 @@ SH_FileGeneralSetFileSizeTime(HWND hwndDlg, WCHAR *lpfilename, PULARGE_INTEGER l
|
||||||
|
|
||||||
if (SHFileGeneralGetFileTimeString(&create_time, resultstr))
|
if (SHFileGeneralGetFileTimeString(&create_time, resultstr))
|
||||||
{
|
{
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14015);
|
SetDlgItemTextW(hwndDlg, 14015, resultstr);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)resultstr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SHFileGeneralGetFileTimeString(&accessed_time, resultstr))
|
if (SHFileGeneralGetFileTimeString(&accessed_time, resultstr))
|
||||||
{
|
{
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14019);
|
SetDlgItemTextW(hwndDlg, 14019, resultstr);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)resultstr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SHFileGeneralGetFileTimeString(&write_time, resultstr))
|
if (SHFileGeneralGetFileTimeString(&write_time, resultstr))
|
||||||
{
|
{
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14017);
|
SetDlgItemTextW(hwndDlg, 14017, resultstr);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)resultstr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!GetFileSizeEx(hFile, &file_size))
|
if (!GetFileSizeEx(hFile, &file_size))
|
||||||
|
@ -417,15 +511,13 @@ SH_FileGeneralSetFileSizeTime(HWND hwndDlg, WCHAR *lpfilename, PULARGE_INTEGER l
|
||||||
|
|
||||||
CloseHandle(hFile);
|
CloseHandle(hFile);
|
||||||
|
|
||||||
if (!StrFormatByteSizeW(file_size.QuadPart,
|
if (!SH_FormatFileSizeWithBytes((PULARGE_INTEGER)&file_size,
|
||||||
resultstr,
|
resultstr,
|
||||||
sizeof(resultstr) / sizeof(WCHAR)))
|
sizeof(resultstr) / sizeof(WCHAR)))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14011);
|
|
||||||
|
|
||||||
TRACE("result size %u resultstr %s\n", file_size.QuadPart, debugstr_w(resultstr));
|
TRACE("result size %u resultstr %s\n", file_size.QuadPart, debugstr_w(resultstr));
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)resultstr);
|
SetDlgItemTextW(hwndDlg, 14011, resultstr);
|
||||||
|
|
||||||
if (lpfilesize)
|
if (lpfilesize)
|
||||||
lpfilesize->QuadPart = (ULONGLONG)file_size.QuadPart;
|
lpfilesize->QuadPart = (ULONGLONG)file_size.QuadPart;
|
||||||
|
@ -444,7 +536,6 @@ BOOL
|
||||||
SH_FileVersionQuerySetText(HWND hwndDlg, DWORD dlgId, LPVOID pInfo, WCHAR *text, WCHAR **resptr)
|
SH_FileVersionQuerySetText(HWND hwndDlg, DWORD dlgId, LPVOID pInfo, WCHAR *text, WCHAR **resptr)
|
||||||
{
|
{
|
||||||
UINT reslen;
|
UINT reslen;
|
||||||
HWND hDlgCtrl;
|
|
||||||
|
|
||||||
if (hwndDlg == NULL || resptr == NULL || text == NULL)
|
if (hwndDlg == NULL || resptr == NULL || text == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -452,9 +543,8 @@ SH_FileVersionQuerySetText(HWND hwndDlg, DWORD dlgId, LPVOID pInfo, WCHAR *text,
|
||||||
if (VerQueryValueW(pInfo, text, (LPVOID *)resptr, &reslen))
|
if (VerQueryValueW(pInfo, text, (LPVOID *)resptr, &reslen))
|
||||||
{
|
{
|
||||||
/* file description property */
|
/* file description property */
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, dlgId);
|
|
||||||
TRACE("%s :: %s\n", debugstr_w(text), debugstr_w(*resptr));
|
TRACE("%s :: %s\n", debugstr_w(text), debugstr_w(*resptr));
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)0, (LPARAM)*resptr);
|
SetDlgItemTextW(hwndDlg, dlgId, *resptr);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -576,9 +666,8 @@ SH_FileVersionInitialize(HWND hwndDlg, WCHAR *lpfilename)
|
||||||
LOWORD(inf->dwFileVersionMS),
|
LOWORD(inf->dwFileVersionMS),
|
||||||
HIWORD(inf->dwFileVersionLS),
|
HIWORD(inf->dwFileVersionLS),
|
||||||
LOWORD(inf->dwFileVersionLS));
|
LOWORD(inf->dwFileVersionLS));
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14001);
|
|
||||||
TRACE("MS %x LS %x res %s \n", inf->dwFileVersionMS, inf->dwFileVersionLS, debugstr_w(buff));
|
TRACE("MS %x LS %x res %s \n", inf->dwFileVersionMS, inf->dwFileVersionLS, debugstr_w(buff));
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)buff);
|
SetDlgItemTextW(hwndDlg, 14001, buff);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (VerQueryValueW(pBuf, const_cast<LPWSTR>(wTranslation), (LPVOID *)&lplangcode, &infolen))
|
if (VerQueryValueW(pBuf, const_cast<LPWSTR>(wTranslation), (LPVOID *)&lplangcode, &infolen))
|
||||||
|
@ -613,8 +702,7 @@ SH_FileVersionInitialize(HWND hwndDlg, WCHAR *lpfilename)
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14009);
|
hDlgCtrl = GetDlgItem(hwndDlg, 14009);
|
||||||
SendMessageW(hDlgCtrl, LB_SETCURSEL, 0, 0);
|
SendMessageW(hDlgCtrl, LB_SETCURSEL, 0, 0);
|
||||||
str = (WCHAR *) SendMessageW(hDlgCtrl, LB_GETITEMDATA, (WPARAM)0, (LPARAM)NULL);
|
str = (WCHAR *) SendMessageW(hDlgCtrl, LB_GETITEMDATA, (WPARAM)0, (LPARAM)NULL);
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14010);
|
SetDlgItemTextW(hwndDlg, 14010, str);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)str);
|
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -672,9 +760,8 @@ SH_FileVersionDlgProc(HWND hwndDlg,
|
||||||
if (str == NULL)
|
if (str == NULL)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
hDlgCtrl = GetDlgItem(hwndDlg, 14010);
|
|
||||||
TRACE("hDlgCtrl %x string %s \n", hDlgCtrl, debugstr_w(str));
|
TRACE("hDlgCtrl %x string %s \n", hDlgCtrl, debugstr_w(str));
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)str);
|
SetDlgItemTextW(hwndDlg, 14010, str);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -767,6 +767,7 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Файловете с разширение '%s' са от вида '%s'. За да промените настройките, за всички '%s' файлове, натиснете „Разширени”."
|
IDS_FILE_DETAILSADV "Файловете с разширение '%s' са от вида '%s'. За да промените настройките, за всички '%s' файлове, натиснете „Разширени”."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -754,4 +754,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Soubory s příponou '%s' jsou typu '%s'. Kliknutím na tlačítko Pokročilé lze změnit nastavení pro všechny soubory '%s'."
|
IDS_FILE_DETAILSADV "Soubory s příponou '%s' jsou typu '%s'. Kliknutím na tlačítko Pokročilé lze změnit nastavení pro všechny soubory '%s'."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -755,4 +755,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -771,4 +771,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Um die Einstellungen, die alle Dateien des Typs '%s' betreffen zu ändern, klicken Sie auf Erweitert."
|
IDS_FILE_DETAILSADV "Um die Einstellungen, die alle Dateien des Typs '%s' betreffen zu ändern, klicken Sie auf Erweitert."
|
||||||
IDS_FILE_TYPES "Dateitypen"
|
IDS_FILE_TYPES "Dateitypen"
|
||||||
IDS_COLUMN_EXTENSION "Erweiterungen"
|
IDS_COLUMN_EXTENSION "Erweiterungen"
|
||||||
|
IDS_BYTES_FORMAT "Bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -767,4 +767,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -777,4 +777,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -779,4 +779,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Los archivos con extensión '%s' son del tipo '%s'. Para cambiar la configuración de los archivos '%s', haga clic en Opciones avanzadas."
|
IDS_FILE_DETAILSADV "Los archivos con extensión '%s' son del tipo '%s'. Para cambiar la configuración de los archivos '%s', haga clic en Opciones avanzadas."
|
||||||
IDS_FILE_TYPES "Tipos de archivos"
|
IDS_FILE_TYPES "Tipos de archivos"
|
||||||
IDS_COLUMN_EXTENSION "Extensiones"
|
IDS_COLUMN_EXTENSION "Extensiones"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -770,4 +770,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Les fichiers avec l'extension '%s' sont de type '%s'. Pour modifier les paramètres qui concernent tous les fichiers '%s', cliquez sur Avancé."
|
IDS_FILE_DETAILSADV "Les fichiers avec l'extension '%s' sont de type '%s'. Pour modifier les paramètres qui concernent tous les fichiers '%s', cliquez sur Avancé."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -769,4 +769,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -234,9 +234,9 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||||
BEGIN
|
BEGIN
|
||||||
ICON "", 14000, 10, 3, 30, 30, WS_VISIBLE
|
ICON "", 14000, 10, 3, 30, 30, WS_VISIBLE
|
||||||
EDITTEXT 14001, 70, 9, 158, 14, ES_LEFT | ES_READONLY
|
EDITTEXT 14001, 70, 9, 158, 14, ES_LEFT | ES_READONLY
|
||||||
LTEXT "Tipo del file:", 14004, 8, 35, 50, 10
|
LTEXT "Tipo di file:", 14004, 8, 35, 50, 10
|
||||||
LTEXT "File", 14005, 68, 35, 160, 10
|
LTEXT "File", 14005, 68, 35, 160, 10
|
||||||
LTEXT "Si apre con:", 14006, 8, 53, 50, 10
|
LTEXT "Apri con:", 14006, 8, 53, 50, 10
|
||||||
EDITTEXT 14007, 68, 53, 160, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER
|
EDITTEXT 14007, 68, 53, 160, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER
|
||||||
LTEXT "Posizione:", 14008, 8, 72, 45, 10
|
LTEXT "Posizione:", 14008, 8, 72, 45, 10
|
||||||
EDITTEXT 14009, 68, 72, 315, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER
|
EDITTEXT 14009, 68, 72, 315, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER
|
||||||
|
@ -437,7 +437,7 @@ CONTROL "", 14000, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHAREIMAGEL
|
||||||
PUSHBUTTON "&Nuovo", 14001, 120, 110, 50, 14, WS_TABSTOP
|
PUSHBUTTON "&Nuovo", 14001, 120, 110, 50, 14, WS_TABSTOP
|
||||||
PUSHBUTTON "&Cancella", 14002, 180, 110, 50, 14, WS_TABSTOP
|
PUSHBUTTON "&Cancella", 14002, 180, 110, 50, 14, WS_TABSTOP
|
||||||
GROUPBOX "Dettagli per l'estensione '%s'", 14003, 7, 130, 249, 70
|
GROUPBOX "Dettagli per l'estensione '%s'", 14003, 7, 130, 249, 70
|
||||||
LTEXT "Si apre con:", -1, 12, 140, 40, 10
|
LTEXT "Apri con:", -1, 12, 140, 40, 10
|
||||||
//ICON
|
//ICON
|
||||||
LTEXT "Nome", 14005, 100, 140, 40, 10
|
LTEXT "Nome", 14005, 100, 140, 40, 10
|
||||||
PUSHBUTTON "&Cambia...", 14006, 180, 140, 50, 14, WS_TABSTOP
|
PUSHBUTTON "&Cambia...", 14006, 180, 140, 50, 14, WS_TABSTOP
|
||||||
|
@ -777,4 +777,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "I files con estensione '%s' sono di tipo '%s'. Per modificare le impostazioni per tutti i file '%s', cliccare su Avanzate."
|
IDS_FILE_DETAILSADV "I files con estensione '%s' sono di tipo '%s'. Per modificare le impostazioni per tutti i file '%s', cliccare su Avanzate."
|
||||||
IDS_FILE_TYPES "Tipi di file"
|
IDS_FILE_TYPES "Tipi di file"
|
||||||
IDS_COLUMN_EXTENSION "Estensioni"
|
IDS_COLUMN_EXTENSION "Estensioni"
|
||||||
|
IDS_BYTES_FORMAT "byte"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "拡張子 '%s' のファイルの種類は'%s'です。 '%s' のファイルすべてに対する設定を変更するには 詳細設定をクリックしてください。"
|
IDS_FILE_DETAILSADV "拡張子 '%s' のファイルの種類は'%s'です。 '%s' のファイルすべてに対する設定を変更するには 詳細設定をクリックしてください。"
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -769,4 +769,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Filer med utvidelser '%s' er av typen '%s'. For å endre innstillingene som er av filen '%s', trykk på avansert."
|
IDS_FILE_DETAILSADV "Filer med utvidelser '%s' er av typen '%s'. For å endre innstillingene som er av filen '%s', trykk på avansert."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -774,4 +774,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Pliki z rozszerzeniem '%s' są typu '%s'. Aby zmienić ustawienia, które dotyczą wszystkich plików '%s', kliknij przycisk Zaawansowane."
|
IDS_FILE_DETAILSADV "Pliki z rozszerzeniem '%s' są typu '%s'. Aby zmienić ustawienia, które dotyczą wszystkich plików '%s', kliknij przycisk Zaawansowane."
|
||||||
IDS_FILE_TYPES "Typy plików"
|
IDS_FILE_TYPES "Typy plików"
|
||||||
IDS_COLUMN_EXTENSION "Rozszerzenia"
|
IDS_COLUMN_EXTENSION "Rozszerzenia"
|
||||||
|
IDS_BYTES_FORMAT "bajtów"
|
||||||
END
|
END
|
||||||
|
|
|
@ -768,4 +768,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -769,4 +769,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Ficheiros com extensão '%s' são do tipo '%s'. Para mudar definições que afectam todos '%s' ficheiros, click Avançado."
|
IDS_FILE_DETAILSADV "Ficheiros com extensão '%s' são do tipo '%s'. Para mudar definições que afectam todos '%s' ficheiros, click Avançado."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,5 +766,6 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Fișierele cu extensia '%s' sunt de tipul '%s'. Pentru a schimbat setări care vor afecta toate fișierele '%s', clic pe Avansat."
|
IDS_FILE_DETAILSADV "Fișierele cu extensia '%s' sunt de tipul '%s'. Pentru a schimbat setări care vor afecta toate fișierele '%s', clic pe Avansat."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
|
@ -765,4 +765,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Файлы с расширением '%s' имеют тип '%s'. Для изменения параметров всех файлов '%s', нажмите 'Дополнительно'."
|
IDS_FILE_DETAILSADV "Файлы с расширением '%s' имеют тип '%s'. Для изменения параметров всех файлов '%s', нажмите 'Дополнительно'."
|
||||||
IDS_FILE_TYPES "Типы файлов"
|
IDS_FILE_TYPES "Типы файлов"
|
||||||
IDS_COLUMN_EXTENSION "Расширения"
|
IDS_COLUMN_EXTENSION "Расширения"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -774,4 +774,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -766,4 +766,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -779,4 +779,5 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Файли з розширенням '%s' мають тип '%s'. Щоб змінити параметри, які впливатимуть на всі файли '%s', натисніть кнопку 'Додатково'."
|
IDS_FILE_DETAILSADV "Файли з розширенням '%s' мають тип '%s'. Щоб змінити параметри, які впливатимуть на всі файли '%s', натисніть кнопку 'Додатково'."
|
||||||
IDS_FILE_TYPES "Типи Файлів"
|
IDS_FILE_TYPES "Типи Файлів"
|
||||||
IDS_COLUMN_EXTENSION "Розширення"
|
IDS_COLUMN_EXTENSION "Розширення"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
|
@ -754,5 +754,6 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
|
@ -766,5 +766,6 @@ BEGIN
|
||||||
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
IDS_FILE_DETAILSADV "Files with extension '%s' are of type '%s'. To change settings that affect all '%s' files, click Advanced."
|
||||||
IDS_FILE_TYPES "FileTypes"
|
IDS_FILE_TYPES "FileTypes"
|
||||||
IDS_COLUMN_EXTENSION "Extensions"
|
IDS_COLUMN_EXTENSION "Extensions"
|
||||||
|
IDS_BYTES_FORMAT "bytes"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
|
@ -46,6 +46,7 @@
|
||||||
#include <sddl.h>
|
#include <sddl.h>
|
||||||
|
|
||||||
#include <tchar.h>
|
#include <tchar.h>
|
||||||
|
#include <strsafe.h>
|
||||||
#include <atlbase.h>
|
#include <atlbase.h>
|
||||||
#include <atlcom.h>
|
#include <atlcom.h>
|
||||||
#include <atlwin.h>
|
#include <atlwin.h>
|
||||||
|
|
|
@ -523,12 +523,12 @@ static INT_PTR CALLBACK OpenWithProgrammDlg(HWND hwndDlg, UINT uMsg, WPARAM wPar
|
||||||
if (poainfo->pcszFile)
|
if (poainfo->pcszFile)
|
||||||
{
|
{
|
||||||
szBuffer[0] = L'\0';
|
szBuffer[0] = L'\0';
|
||||||
SendDlgItemMessageW(hwndDlg, 14001, WM_GETTEXT, sizeof(szBuffer), (LPARAM)szBuffer);
|
GetDlgItemTextW(hwndDlg, 14001, szBuffer, sizeof(szBuffer)/sizeof(szBuffer[0]));
|
||||||
index = wcslen(szBuffer);
|
index = wcslen(szBuffer);
|
||||||
if (index + wcslen(poainfo->pcszFile) + 1 < sizeof(szBuffer)/sizeof(szBuffer[0]))
|
if (index + wcslen(poainfo->pcszFile) + 1 < sizeof(szBuffer)/sizeof(szBuffer[0]))
|
||||||
wcscat(szBuffer, poainfo->pcszFile);
|
wcscat(szBuffer, poainfo->pcszFile);
|
||||||
szBuffer[(sizeof(szBuffer)/sizeof(WCHAR))-1] = L'\0';
|
szBuffer[(sizeof(szBuffer)/sizeof(WCHAR))-1] = L'\0';
|
||||||
SendDlgItemMessageW(hwndDlg, 14001, WM_SETTEXT, 0, (LPARAM)szBuffer);
|
SetDlgItemTextW(hwndDlg, 14001, szBuffer);
|
||||||
ZeroMemory(&Context, sizeof(OPEN_WITH_CONTEXT));
|
ZeroMemory(&Context, sizeof(OPEN_WITH_CONTEXT));
|
||||||
Context.hDlgCtrl = GetDlgItem(hwndDlg, 14002);
|
Context.hDlgCtrl = GetDlgItem(hwndDlg, 14002);
|
||||||
LoadOWItems(&Context, poainfo->pcszFile);
|
LoadOWItems(&Context, poainfo->pcszFile);
|
||||||
|
|
|
@ -217,7 +217,7 @@ BOOL SH_ShowDriveProperties(WCHAR * drive, LPCITEMIDLIST pidlFolder, LPCITEMIDLI
|
||||||
BOOL SH_ShowRecycleBinProperties(WCHAR sDrive);
|
BOOL SH_ShowRecycleBinProperties(WCHAR sDrive);
|
||||||
BOOL SH_ShowPropertiesDialog(LPWSTR lpf, LPCITEMIDLIST pidlFolder, LPCITEMIDLIST * apidl);
|
BOOL SH_ShowPropertiesDialog(LPWSTR lpf, LPCITEMIDLIST pidlFolder, LPCITEMIDLIST * apidl);
|
||||||
BOOL SH_ShowFolderProperties(LPWSTR pwszFolder, LPCITEMIDLIST pidlFolder, LPCITEMIDLIST * apidl);
|
BOOL SH_ShowFolderProperties(LPWSTR pwszFolder, LPCITEMIDLIST pidlFolder, LPCITEMIDLIST * apidl);
|
||||||
|
LPWSTR SH_FormatFileSizeWithBytes(PULARGE_INTEGER lpQwSize, LPWSTR pszBuf, UINT cchBuf);
|
||||||
|
|
||||||
EXTERN_C HRESULT WINAPI DoRegisterServer(void);
|
EXTERN_C HRESULT WINAPI DoRegisterServer(void);
|
||||||
EXTERN_C HRESULT WINAPI DoUnregisterServer(void);
|
EXTERN_C HRESULT WINAPI DoUnregisterServer(void);
|
||||||
|
|
|
@ -2033,8 +2033,7 @@ INT_PTR CALLBACK ShellLink::SH_ShellLinkDlgProc(HWND hwndDlg, UINT uMsg, WPARAM
|
||||||
wchar_t * wTrgtLocat;
|
wchar_t * wTrgtLocat;
|
||||||
const int ch = '\\';
|
const int ch = '\\';
|
||||||
wTrgtLocat = wcsrchr(pThis->sWorkDir, ch)+1;
|
wTrgtLocat = wcsrchr(pThis->sWorkDir, ch)+1;
|
||||||
hDlgCtrl = GetDlgItem( hwndDlg, 14007 );
|
SetDlgItemTextW(hwndDlg, 14007, wTrgtLocat);
|
||||||
SendMessageW(hDlgCtrl, WM_SETTEXT, (WPARAM)NULL, (LPARAM)wTrgtLocat);
|
|
||||||
|
|
||||||
/* target path */
|
/* target path */
|
||||||
hDlgCtrl = GetDlgItem( hwndDlg, 14009 );
|
hDlgCtrl = GetDlgItem( hwndDlg, 14009 );
|
||||||
|
@ -2058,12 +2057,10 @@ INT_PTR CALLBACK ShellLink::SH_ShellLinkDlgProc(HWND hwndDlg, UINT uMsg, WPARAM
|
||||||
if ( lppsn->hdr.code == PSN_APPLY )
|
if ( lppsn->hdr.code == PSN_APPLY )
|
||||||
{
|
{
|
||||||
/* set working directory */
|
/* set working directory */
|
||||||
hDlgCtrl = GetDlgItem( hwndDlg, 14011 );
|
GetDlgItemTextW(hwndDlg, 14011, szBuffer, MAX_PATH);
|
||||||
SendMessageW( hDlgCtrl, WM_GETTEXT, (WPARAM)MAX_PATH, (LPARAM)szBuffer );
|
|
||||||
pThis->SetWorkingDirectory(szBuffer);
|
pThis->SetWorkingDirectory(szBuffer);
|
||||||
/* set link destination */
|
/* set link destination */
|
||||||
hDlgCtrl = GetDlgItem( hwndDlg, 14009 );
|
GetDlgItemTextW(hwndDlg, 14009, szBuffer, MAX_PATH);
|
||||||
SendMessageW( hDlgCtrl, WM_GETTEXT, (WPARAM)MAX_PATH, (LPARAM)szBuffer);
|
|
||||||
if ( !SHELL_ExistsFileW(szBuffer) )
|
if ( !SHELL_ExistsFileW(szBuffer) )
|
||||||
{
|
{
|
||||||
//FIXME load localized error msg
|
//FIXME load localized error msg
|
||||||
|
|
|
@ -612,7 +612,7 @@ QueueFile(
|
||||||
to = &Context->to->feFiles[Context->Index];
|
to = &Context->to->feFiles[Context->Index];
|
||||||
|
|
||||||
/* update status */
|
/* update status */
|
||||||
SendDlgItemMessageW(Context->hwndDlg, 14001, WM_SETTEXT, 0, (LPARAM)from->szFullPath);
|
SetDlgItemTextW(Context->hwndDlg, 14001, from->szFullPath);
|
||||||
|
|
||||||
if (Context->op->req->wFunc == FO_COPY)
|
if (Context->op->req->wFunc == FO_COPY)
|
||||||
{
|
{
|
||||||
|
|
|
@ -136,6 +136,7 @@
|
||||||
#define IDS_FILE_TYPES 174
|
#define IDS_FILE_TYPES 174
|
||||||
#define IDS_FILE_DETAILS 175
|
#define IDS_FILE_DETAILS 175
|
||||||
#define IDS_FILE_DETAILSADV 176
|
#define IDS_FILE_DETAILSADV 176
|
||||||
|
#define IDS_BYTES_FORMAT 177
|
||||||
|
|
||||||
#define IDS_RUNDLG_ERROR 180
|
#define IDS_RUNDLG_ERROR 180
|
||||||
#define IDS_RUNDLG_BROWSE_ERROR 181
|
#define IDS_RUNDLG_BROWSE_ERROR 181
|
||||||
|
|
Loading…
Reference in a new issue