20 : m_LicenseType(
LICENSE_NONE), m_SizeBytes(0), m_sFileName(sFileNameParam),
21 m_IsInstalled(
FALSE), m_HasLanguageInfo(
FALSE), m_HasInstalledVersion(
FALSE)
67 ScrnshotField.
Format(
L"Screenshot%d",
i + 1);
69 if (!
GetString(ScrnshotField, ScrnshotLocation))
156 const WCHAR cDelimiter =
L'|';
171 if (szBuffer[
i] != cDelimiter && szBuffer[
i] !=
L'\n')
173 m_szLocale += szBuffer[
i];
234 for (
INT i = 0;
i < nLanguagesSize; ++
i)
304 ReturnedString.
Empty();
346 while (InfoListPosition)
372 szTmp += FindFileData.cFileName;
481 while (CurrentListPosition !=
NULL)
483 POSITION LastListPosition = CurrentListPosition;
487 if (
Info->m_sFileName == FindFileData.cFileName)
514 Info->SetLastWriteTime(&FindFileData.ftLastWriteTime);
517 if (
Info->m_szUrlDownload.IsEmpty())
527 if (EnumType ==
Info->m_Category
588 while (CurrentListPosition !=
NULL)
591 if (
info->m_szPkgName.CompareNoCase(szPkgName) == 0)
VOID RetrieveGeneralInfo(AvailableStrings &m_Strings)
BOOL WINAPI CreateDirectoryW(IN LPCWSTR lpPathName, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes)
BOOL WINAPI FindNextFileW(IN HANDLE hFindFile, OUT LPWIN32_FIND_DATAW lpFindFileData)
ATL::CStringW m_sFileName
LPWSTR WINAPI StrFormatByteSizeW(LONGLONG llBytes, LPWSTR lpszDest, UINT cchMax)
POSITION GetHeadPosition() const
#define MAKELCID(lgid, srtid)
ATL::CStringW m_szPkgName
BOOL ExtractFilesFromCab(const ATL::CStringW &szCabName, const ATL::CStringW &szCabDir, const ATL::CStringW &szOutputDir)
BOOL WINAPI PathRemoveFileSpecW(LPWSTR lpszPath)
ATL::CStringW m_szLicense
#define APPLICATION_DATABASE_URL
BOOL GetInstalledVersion(ATL::CStringW *pszVersion, const ATL::CStringW &szRegName)
VOID RetrieveLicenseType()
ATL::CSimpleArray< ATL::CStringW > m_szScrnshotLocation
BOOL HasInstalledVersion() const
VOID DownloadApplicationsDB(LPCWSTR lpUrl, BOOL IsOfficial)
ATL::CStringW m_szUrlSite
#define INVALID_HANDLE_VALUE
VOID SetLastWriteTime(FILETIME *ftTime)
DWORD WINAPI GetLastError(VOID)
void __cdecl Format(UINT nFormatID,...)
LCID WINAPI GetUserDefaultLCID(void)
BOOL GetInt(const ATL::CStringW &KeyName, INT &iResult)
CAvailableApplicationInfo * FindAppByPkgName(const ATL::CStringW &szPkgName) const
BOOL IsLicenseType(INT x)
static BOOL UpdateAppsDB()
WCHAR szSourceURL[INTERNET_MAX_URL_LENGTH]
BOOL WINAPI PathIsURLW(LPCWSTR lpstrPath)
BOOL WINAPI PathAppendW(LPWSTR lpszPath, LPCWSTR lpszAppend)
BOOL GetString(LPCWSTR lpKeyName, ATL::CStringW &ReturnedString)
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
static void DeleteWithWildcard(const CStringW &DirWithFilter)
void ReleaseBuffer(_In_ int nNewLength=-1)
void WINAPI PathRemoveExtensionW(LPWSTR lpszPath)
ATL::CStringW m_szUrlDownload
static struct _test_info info[]
BOOL WINAPI DeleteFileW(IN LPCWSTR lpFileName)
BOOL m_HasInstalledVersion
BOOL WINAPI PathFileExistsW(LPCWSTR lpszPath)
BOOL WINAPI RemoveDirectoryW(IN LPCWSTR lpPathName)
BOOL FindInLanguages(LCID what) const
#define FILE_ATTRIBUTE_DIRECTORY
ATL::CSimpleArray< CAvailableApplicationInfo > FindAppsByPkgNameList(const ATL::CSimpleArray< ATL::CStringW > &arrAppsNames) const
BOOL HasEnglishLanguage() const
E & GetNext(_Inout_ POSITION &pos)
ATL::CSimpleArray< LCID > m_LanguageLCIDs
LONG WINAPI CompareFileTime(IN CONST FILETIME *lpFileTime1, IN CONST FILETIME *lpFileTime2)
SETTINGS_INFO SettingsInfo
BOOL Enum(INT EnumType, AVAILENUMPROC lpEnumProc, PVOID param)
static AvailableStrings m_Strings
_In_ WDFCOLLECTION _In_ ULONG Index
ATL::CStringW m_szVersion
ATL::CStringW m_szInstalledVersion
static VOID DeleteCurrentAppsDB()
BOOL GetStorageDirectory(ATL::CStringW &lpDirectory)
VOID RefreshAppInfo(AvailableStrings &m_Strings)
BOOL WINAPI StrToIntExW(LPCWSTR lpszStr, DWORD dwFlags, LPINT lpiRet)
VOID RetrieveInstalledStatus()
E & GetAt(_In_ POSITION pos)
ATL::CStringW m_szRegName
BOOL AddSelected(CAvailableApplicationInfo *AvlbInfo)
BOOL HasLanguageInfo() const
VOID RetrieveInstalledVersion()
BOOL(CALLBACK * AVAILENUMPROC)(CAvailableApplicationInfo *Info, BOOL bInitialCheckState, PVOID param)
static BOOL ForceUpdateAppsDB()
ATL::CAtlList< CAvailableApplicationInfo * > m_SelectedList
ATL::CAtlList< CAvailableApplicationInfo * > m_InfoList
POSITION AddTail(INARGTYPE element)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL RetrieveIcon(ATL::CStringW &IconLocation) const
ATL::CStringW m_szIconLocation
BOOL GetString(const ATL::CStringW &KeyName, ATL::CStringW &ResultString)
static const WCHAR IconPath[]
BOOL PathAppendNoDirEscapeW(LPWSTR pszPath, LPCWSTR pszMore)
#define APPLICATION_DATABASE_NAME
void RemoveAt(_In_ POSITION pos)
LicenseType m_LicenseType
#define RtlCopyMemory(Destination, Source, Length)
POSITION Find(INARGTYPE element, _In_opt_ POSITION posStartAfter=NULL) const
#define ERROR_ALREADY_EXISTS
int Compare(_In_z_ PCXSTR psz) const
ATL::CStringW szSearchPath
BOOL RemoveSelected(CAvailableApplicationInfo *AvlbInfo)
BOOL RetrieveScrnshot(UINT Index, ATL::CStringW &ScrnshotLocation) const
HANDLE WINAPI FindFirstFileW(IN LPCWSTR lpFileName, OUT LPWIN32_FIND_DATAW lpFindFileData)
BOOL HasNativeLanguage() const
CAvailableApplicationInfo(const ATL::CStringW &sFileNameParam, AvailableStrings &m_Strings)
BOOL WINAPI FindClose(HANDLE hFindFile)