74 LPWSTR szCabPathFileName, szFileName, szDestDir;
75 size_t cabPathNum, fileNameNum, destDirNum;
90 if (!ExtractFromCabinet(szCabPathFileName, szFileName, szDestDir))
120 unsigned int nMaxFilesNum = 255;
121 size_t newSize = (nMaxFilesNum * (
MAX_PATH + 1)) + 1;
144 LPWSTR lpszTmp = lpszFiles;
146 size_t numOfChars = 0;
154 numOfChars +=
wcslen(lpszTmp)+1 + 3;
155 lpszTmp +=
wcslen(lpszTmp)+1;
164 wcscat(lpszFilePatterns,
L"\"");
165 wcscat(lpszFilePatterns, lpszFiles);
166 wcscat(lpszFilePatterns,
L"\"");
168 lpszFiles +=
wcslen(lpszFiles)+1;
170 wcscat(lpszFilePatterns,
L" ");
175 wcscpy(lpszFilePatterns, lpszFiles);
227 bi.
lpszTitle =
L"Select the directory where the restored files should be stored:";
#define OFN_FILEMUSTEXIST
VOID WINAPI CoTaskMemFree(LPVOID ptr)
BOOL MemFree(IN PVOID lpMem)
#define UNREFERENCED_PARAMETER(P)
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
#define OFN_ALLOWMULTISELECT
HWND WINAPI SetFocus(_In_opt_ HWND)
int WINAPI MessageBoxW(_In_opt_ HWND hWnd, _In_opt_ LPCWSTR lpText, _In_opt_ LPCWSTR lpCaption, _In_ UINT uType)
#define IDC_TXT_FILE_TO_RESTORE
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
#define IDC_BTN_BROWSE_DIRS
#define IDC_BTN_BROWSE_CAB_FILES
#define OFN_PATHMUSTEXIST
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
PVOID MemAlloc(IN DWORD dwFlags, IN SIZE_T dwBytes)
int WINAPI GetWindowTextLengthW(_In_ HWND)
#define MB_ICONINFORMATION
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
PCIDLIST_ABSOLUTE pidlRoot
LPITEMIDLIST WINAPI SHBrowseForFolderW(LPBROWSEINFOW lpbi)
#define BIF_RETURNONLYFSDIRS
void WINAPI DECLSPEC_HOTPATCH CoUninitialize(void)
#define Edit_SetSel(hwndCtl, ichStart, ichEnd)
HRESULT WINAPI DECLSPEC_HOTPATCH CoInitializeEx(LPVOID lpReserved, DWORD dwCoInit)
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define IDC_BTN_BROWSE_ALL_FILES
#define Edit_SetText(hwndCtl, lpsz)
ITEMIDLIST UNALIGNED * LPITEMIDLIST