#include "StdAfx.h"#include "ArchiverInfo.h"#include "Common/StringConvert.h"#include "Windows/FileFind.h"#include "Windows/FileName.h"#include "Windows/DLL.h"#include "Windows/PropVariant.h"#include "../../Archive/IArchive.h"Go to the source code of this file.
Typedefs | |
| typedef UInt32(WINAPI * | GetHandlerPropertyFunc )(PROPID propID, PROPVARIANT *value) |
| typedef UInt32(WINAPI * | CreateObjectPointer )(const GUID *clsID, const GUID *interfaceID, void **outObject) |
Functions | |
| static void | SplitString (const UString &srcString, UStringVector &destStrings) |
| static UString | GetModuleFolderPrefix () |
| static UString | GetBaseFolderPrefixFromRegistry () |
| static void | SetBuffer (CByteBuffer &bb, const Byte *data, int size) |
| void | ReadArchiverInfoList (CObjectVector< CArchiverInfo > &archivers) |
Variables | |
| HINSTANCE | g_hInstance |
| static wchar_t * | kFormatFolderName = L"Formats" |
| static LPCTSTR | kRegistryPath = TEXT("Software\\7-zip") |
| static LPCWSTR | kProgramPathValue = L"Path" |
| typedef UInt32(WINAPI * CreateObjectPointer)(const GUID *clsID, const GUID *interfaceID, void **outObject) |
Definition at line 101 of file ArchiverInfo.cpp.
| typedef UInt32(WINAPI * GetHandlerPropertyFunc)(PROPID propID, PROPVARIANT *value) |
Definition at line 55 of file ArchiverInfo.cpp.
| static UString GetBaseFolderPrefixFromRegistry | ( | ) | [static] |
Definition at line 84 of file ArchiverInfo.cpp.
References NWindows::NFile::NFind::FindFile(), GetModuleFolderPrefix(), NWindows::NFile::NFind::CFileInfoBase::IsDirectory(), and kFormatFolderName.
Referenced by ReadArchiverInfoList().
| static UString GetModuleFolderPrefix | ( | ) | [static] |
Definition at line 58 of file ArchiverInfo.cpp.
References g_hInstance, CStringBase< T >::Left(), pos(), and CStringBase< T >::ReverseFind().
Referenced by GetBaseFolderPrefixFromRegistry().
| void ReadArchiverInfoList | ( | CObjectVector< CArchiverInfo > & | archivers | ) |
Definition at line 116 of file ArchiverInfo.cpp.
References CObjectVector< T >::Add(), CArchiverExtInfo::AddExt, CArchiverInfo::Associate, tagPROPVARIANT::boolVal, tagPROPVARIANT::bstrVal, CArchiverInfo::ClassID, NWindows::NCOM::CPropVariant::Clear(), CBaseRecordVector::Clear(), CStringBase< T >::Empty(), CArchiverExtInfo::Ext, CArchiverInfo::Extensions, CArchiverInfo::FilePath, GetBaseFolderPrefixFromRegistry(), if(), NWindows::NFile::NFind::CFileInfoBase::IsDirectory(), NArchive::kAddExtension, NArchive::kAssociate, NArchive::kClassID, CArchiverInfo::KeepName, NArchive::kExtension, kFormatFolderName, NArchive::kKeepName, NArchive::kName, NArchive::kStartSignature, NArchive::kUpdate, NWindows::NFile::NFind::CFileInfoW::Name, CArchiverInfo::Name, NWindows::NFile::NFind::CEnumeratorW::Next(), NULL, S_OK, SetBuffer(), CBaseRecordVector::Size(), SplitString(), CArchiverInfo::StartSignature, SysStringByteLen(), CArchiverInfo::UpdateEnabled, VARIANT_BOOLToBool, tagPROPVARIANT::vt, VT_BOOL, VT_BSTR, and VT_EMPTY.
Referenced by OpenArchive().
| static void SetBuffer | ( | CByteBuffer & | bb, | |
| const Byte * | data, | |||
| int | size | |||
| ) | [static] |
| static void SplitString | ( | const UString & | srcString, | |
| UStringVector & | destStrings | |||
| ) | [static] |
Definition at line 30 of file ArchiverInfo.cpp.
References CObjectVector< T >::Add(), c, CBaseRecordVector::Clear(), and CStringBase< T >::Length().
Referenced by ReadArchiverInfoList().
| HINSTANCE g_hInstance |
Referenced by GetModuleFolderPrefix().
wchar_t* kFormatFolderName = L"Formats" [static] |
Definition at line 66 of file ArchiverInfo.cpp.
Referenced by GetBaseFolderPrefixFromRegistry(), and ReadArchiverInfoList().
LPCWSTR kProgramPathValue = L"Path" [static] |
Definition at line 68 of file ArchiverInfo.cpp.
LPCTSTR kRegistryPath = TEXT("Software\\7-zip") [static] |
Definition at line 67 of file ArchiverInfo.cpp.
1.5.6