// logCollect.h : PROJECT_NAME アプリケーションのメイン ヘッダー ファイルです。
//
#pragma once
#ifndef __AFXWIN_H__
#error "PCH に対してこのファイルをインクルードする前に 'stdafx.h' をインクルードしてください"
#endif
#include "resource.h" // メイン シンボル
//#include "WaitingDlg.h"
#include <windows.h>
#define MUTEX_ID_SSU_LOG_COLLECT _T("LogCollect")
#define PROVIDER_NAME L"Application Error"
#define RESOURCE_DLL L"C:\\WINDOWS\\System32\\wer.dll"
#define ERROR_MODULE_NAME _T("PfuSshMain.exe")
#define REGISTRY_EXPORT _T("RegistryExport.txt")
#define SYSTEM_INFO32 _T("SystemInfo.nfo")
#define EVENT_LOG _T("EventLog.evtx")
#define MODULE_INFO _T("ModuleInfo.txt")
#define OCR_MODULE_INFO _T("HomeOcrModuleInfo.txt")
#define SCANSNAP_HOME_ONLINE_UPDATE_INFO _T("OnlineUpdateModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK1_TXT _T("OcrLangPack1ModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK2_TXT _T("OcrLangPack2ModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK3_TXT _T("OcrLangPack3ModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK4_TXT _T("OcrLangPack4ModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK5_TXT _T("OcrLangPack5ModuleInfo.txt")
#define SCANSNAP_HOME_OCR_LANGPACK6_TXT _T("OcrLangPack6ModuleInfo.txt")
#define SETUP_API_PATH _T("\\INF\\Setupapi.dev.log")
#define PFUREGTXT _T("PfuRegistryExport.txt")
#define RUNREGTXT _T("RunRegistryExport.txt")
#define RUNONCEREGTXT _T("RunOnceRegistryExport.txt")
#define APPPATHREGTXT _T("AppPathRegistryExport.txt")
#define HKEYCURRENTUSERPFUTXT _T("AurrentPfuRegistryExport.txt")
#define SESSIONMANGERTXT _T("SessionMangerRegistryExport.txt")
#define MEISHI_FILING_OCR_TXT _T("MeiShiFilingRegistryExport.txt")
#define SCANSNAP_CONNECT_APPLICATION_TXT _T("ScanSnapConnectApplicationExport.txt")
#define CARDMINDER_TXT _T("CarMinderRegistryExport.txt")
#define SCANSANP_ORGANIZER_TXT _T("ScanSnapOrganizerExport.txt")
#define SCANSANP_MANEGER_TXT _T("ScanSnapMangerRegistryExport.txt")
#define SCANSANP_MANULUL_TXT _T("ScanSnapManululRegistryExport.txt")
#define SCANASANP_CLOUD_TXT _T("ScanSnapCouldRegistryExport.txt")
#define SCANSNAP_RECEIPT_FULL_TXT _T("ScanSnapReceiptFullRegistryExport.txt")
#define SCANSNAP_RECEIPT_UPDATE_TXT _T("ScanSnapReceiptUpdateRegistryExport.txt")
#define SOURCELOG _T("PFU\\ScanSnap Home\\Logs")
#define SOURCECOFIG _T("PFU\\ScanSnap Home\\Configs")
#define SOURCEPROFILE _T("PFU\\ScanSnap Home\\Managed\\Profiles\\PfuSsHome.xml")
//ScanSnao Home、ScanSnap Home OCR Engine、ScanSnap Online Update、ScanSnap Home OCR LangPack1 - 6
#define TARGETLOG _T("ScanSnap Home Logs")
#define TARGETCONFIG _T("ScanSnap Home Configs")
#define TARGETPROFILE _T("ScanSnap Home Profiles")
#define TARGETLICENSECUSTOM _T("ScanSnap Home Custom")
#define MEISHI_FILING_OCR_FOLER _T("Meishi Filing Ocr")
#define SCANSNAP_CONNECT_APPLICATION_FOLER _T("ScanSnap Connect Application")
#define SCANASANP_CLOUD_FOLER _T("ScanSnap Cloud")
#define SCANSNAP_RECEIPT_FOLER _T("ScanSnap Receipt")
#define CARDMINDER_FOLER _T("CardMinder")
#define SCANSANP_ORGANIZER_FOLER _T("ScanSnap Organizer")
#define SCANSANP_MANEGER_FOLER _T("ScanSnap Manager")
#define SCANSANP_MANULUL_FOLER _T("ScanSnap Manulal")
#define LOG_CONTENT_COLLECTION _T("Log content collection")
#define MODULE_EXPORT _T("Module export")
#define REGISTRY_INFORMATION _T("Registry information")
#define SCANSANP _T("Key")
#define HKEY_LOCAL_MACHINE_SCAN _T("HKEY_LOCAL_MACHINE\\")
#define HKEY_CURRENT_USER_SCAN _T("HKEY_CURRENT_USER\\")
#define SOFTWARE64 _T("SOFTWARE\\Wow6432Node\\")
#define SOFTWARE32 _T("SOFTWARE\\")
#define RESTARTMESSAGE _T("temp\\SSHomeDownloadInstaller\\RestartMessage.ini")
#define RESTART _T("temp\\SSHomeDownloadInstaller\\Restart.ini")
#define SCANSNAP_HOME_REGBIT _T("PFU\\ScanSnap Software\\ScanSnap Home")
#define OCR_ENGINE_REGBIT _T("PFU\\ScanSnap Software\\ScanSnap Home OCR Engine")
#define SCANSNAP_HOME_ONLINE_UPDATE _T("PFU\\ScanSnap Software\\ScanSnap Online Update")
#define SCANSNAP_HOME_OCR_LANGPACK1 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack1")
#define SCANSNAP_HOME_OCR_LANGPACK2 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack2")
#define SCANSNAP_HOME_OCR_LANGPACK3 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack3")
#define SCANSNAP_HOME_OCR_LANGPACK4 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack4")
#define SCANSNAP_HOME_OCR_LANGPACK5 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack5")
#define SCANSNAP_HOME_OCR_LANGPACK6 _T("PFU\\ScanSnap Software\\ScanSnap Home OCR LangPack6")
#define PFUREG _T("PFU")
#define RUNREG _T("Microsoft\\Windows\\CurrentVersion\\Run")
#define RUNONCEREG _T("Microsoft\\Windows\\CurrentVersion\\RunOnce")
#define APPPATHREG _T("Microsoft\\Windows\\CurrentVersion\\App Paths")
#define UNINSTALL_REGISTRY _T("Microsoft\\Windows\\CurrentVersion\\Uninstall\\")
#define HKEYCURRENTUSERPFU _T("Software\\PFU")
#define SESSIONMANGER _T("SYSTEM\\CurrentControlSet\\Control\\Session Manager")
#define MEISHI_FILING_OCR _T("{8FD2C828-0172-4343-9979-D7DC33E7B384}")
#define SCANSNAP_CONNECT_APPLICATION _T("{1F110024-B681-414C-BB3E-C76CE5736012}")
#define CARDMINDER _T("{9D14FAAC-D3BB-47E0-9B0F-3230300E3758}")
#define SCANSANP_ORGANIZER _T("{E58F3B88-3B3E-4F85-9323-04789D979C15}")
#define SCANSANP_MANEGER _T("{DBCDB997-EEEB-4BE9-BAFF-26B4094DBDE6}")
#define SCANSANP_MANULUL _T("{EC9B0050-37E8-457B-9024-7E9FFB278EFE}")
#define SCANASANP_CLOUD_KEY1 _T("{B50CC953-E5EB-46E2-9A42-FB36B6CC11F4}")
#define SCANASANP_CLOUD_KEY2 _T("{EB9FD7BB-5F49-4269-817C-59861E8CE533}")
#define SCANASANP_CLOUD_KEY3 _T("{EABAD288-8DD3-443F-AEE0-BF650EE439FB}")
#define SCANASANP_CLOUD_KEY4 _T("{A4A33848-B6BD-4320-A5B9-7218D6729874}")
#define SCANASANP_CLOUD_KEY5 _T("{ACBAB292-10EE-4D45-B8B5-38627B6F28EB}")
#define SCANASANP_CLOUD_KEY6 _T("{1E67E7FC-748D-4A96-8EE8-3D31B989EDEE}")
#define SCANASANP_CLOUD_KEY7 _T("{CDFCCBAA-0C79-49BC-BD9F-79D4BDE028A8}")
#define SCANASANP_CLOUD_KEY8 _T("{D858FF7F-C376-475F-969F-92005777FC6D}")
#define SCANASANP_CLOUD_KEY9 _T("{D8C40674-8312-4FFA-A6F7-038BF43C42B2}")
#define SCANASANP_CLOUD_KEY10 _T("{8B619DBF-77D4-4678-AFAC-7C435EC9E91C}")
#define SCANSNAP_RECEIPT_FULL_KEY1 _T("{0A25866C-8B1B-409B-8942-A3EC3A193D38}")
#define SCANSNAP_RECEIPT_FULL_KEY2 _T("{4201C7D3-6BBC-423A-95AE-EB5BB15CC58F}")
#define SCANSNAP_RECEIPT_FULL_KEY3 _T("{9EF196DB-4CBA-4DC6-A8D4-C475E5845C02}")
#define SCANSNAP_RECEIPT_FULL_KEY4 _T("{A62D5CEC-ED69-401F-BB6A-73A29F027F0E}")
#define SCANSNAP_RECEIPT_FULL_KEY5 _T("{CAC62AF1-1053-4240-B288-9F0CC61C3CF8}")
#define SCANSNAP_RECEIPT_FULL_KEY6 _T("{072AA689-80A9-4B27-A8B3-37BB84C56F30}")
#define SCANSNAP_RECEIPT_FULL_KEY7 _T("{A7A7D8BA-2F97-4F67-A3DA-91A8A09624F6}")
#define SCANSNAP_RECEIPT_FULL_KEY8 _T("{E29B84F2-5638-4F93-94EC-578F256B8FB8}")
#define SCANSNAP_RECEIPT_UPDATE_KEY1 _T("{B724960F-E869-465B-827B-58D4E6A25ED7}")
#define SCANSNAP_RECEIPT_UPDATE_KEY2 _T("{BD13F3C5-08E2-45AC-BEE4-DA744532AD56}")
#define SCANSNAP_RECEIPT_UPDATE_KEY3 _T("{23061C97-27BE-4757-87BF-E1A9A395202C}")
#define SCANSNAP_RECEIPT_UPDATE_KEY4 _T("{572D9602-C32D-4FB9-B5E4-EF29EC4B205C}")
#define SCANSNAP_RECEIPT_UPDATE_KEY5 _T("{48889D77-3353-441D-BB6A-9B40599C96EC}")
#define SCANSNAP_RECEIPT_UPDATE_KEY6 _T("{DB956619-6328-4C38-BAF2-B030DC763D04}")
#define SCANSNAP_RECEIPT_UPDATE_KEY7 _T("{9D14FAAC-D3BB-47E0-9B0F-3230300E3758}")
#define SCANASANP_CLOUD_TEMP _T("10001")
#define SCANSNAP_RECEIPT_FULL_TEMP _T("10002")
#define SCANSNAP_RECEIPT_UPDATE_TEMP _T("10003")
#define MY_BUFSIZE 500
#define MAX_TIMESTAMP_LEN 23 + 1 // mm/dd/yyyy hh:mm:ss.mmm
#define MAX_RECORD_BUFFER_SIZE 0x10000 // 64K
#define SOURCELOG _T("PFU\\ScanSnap Home\\Logs")
#define SOURCECOFIG _T("PFU\\ScanSnap Home\\Configs")
#define SOURCEPROFILE _T("PFU\\ScanSnap Home\\Managed\\Profiles\\PfuSsHome.xml")
static const TCHAR* SOURCEFOLDER[] = {
SOURCELOG,
SOURCECOFIG,
SOURCEPROFILE,
};
static const TCHAR* ModuleExport[] = {
SCANSNAP_HOME_REGBIT,
OCR_ENGINE_REGBIT,
SCANSNAP_HOME_ONLINE_UPDATE,
SCANSNAP_HOME_OCR_LANGPACK1,
SCANSNAP_HOME_OCR_LANGPACK2,
SCANSNAP_HOME_OCR_LANGPACK3,
SCANSNAP_HOME_OCR_LANGPACK4,
SCANSNAP_HOME_OCR_LANGPACK5,
SCANSNAP_HOME_OCR_LANGPACK6
};
static const TCHAR* SCANASANP_CLOUD[] = {
SCANASANP_CLOUD_KEY1,
SCANASANP_CLOUD_KEY2,
SCANASANP_CLOUD_KEY3,
SCANASANP_CLOUD_KEY4,
SCANASANP_CLOUD_KEY5,
SCANASANP_CLOUD_KEY6,
SCANASANP_CLOUD_KEY7,
SCANASANP_CLOUD_KEY8,
SCANASANP_CLOUD_KEY9,
SCANASANP_CLOUD_KEY10
};
static const TCHAR* SCANSNAP_RECEIPT_FULL[] = {
SCANSNAP_RECEIPT_FULL_KEY1,
SCANSNAP_RECEIPT_FULL_KEY2,
SCANSNAP_RECEIPT_FULL_KEY3,
SCANSNAP_RECEIPT_FULL_KEY4,
SCANSNAP_RECEIPT_FULL_KEY5,
SCANSNAP_RECEIPT_FULL_KEY6,
SCANSNAP_RECEIPT_FULL_KEY7,
SCANSNAP_RECEIPT_FULL_KEY8
};
static const TCHAR* SCANSNAP_RECEIPT_UPDATE[] = {
SCANSNAP_RECEIPT_UPDATE_KEY1,
SCANSNAP_RECEIPT_UPDATE_KEY2,
SCANSNAP_RECEIPT_UPDATE_KEY3,
SCANSNAP_RECEIPT_UPDATE_KEY4,
SCANSNAP_RECEIPT_UPDATE_KEY5,
SCANSNAP_RECEIPT_UPDATE_KEY6,
SCANSNAP_RECEIPT_UPDATE_KEY7
};
static const TCHAR* FOLDER[] = {
TARGETLOG,
TARGETCONFIG,
TARGETPROFILE,
TARGETLICENSECUSTOM,
MEISHI_FILING_OCR_FOLER,
SCANSNAP_CONNECT_APPLICATION_FOLER,
SCANASANP_CLOUD_FOLER,
SCANSNAP_RECEIPT_FOLER,
CARDMINDER_FOLER,
SCANSANP_ORGANIZER_FOLER,
SCANSANP_MANEGER_FOLER,
SCANSANP_MANULUL_FOLER
};
static const TCHAR* FOLDER_INIT[] = {
LOG_CONTENT_COLLECTION,
MODULE_EXPORT,
REGISTRY_INFORMATION
};
static const TCHAR* REGISTRY_ARRAY[] = {
PFUREG,
RUNREG,
RUNONCEREG,
APPPATHREG,
HKEYCURRENTUSERPFU,
SESSIONMANGER,
MEISHI_FILING_OCR,
SCANSNAP_CONNECT_APPLICATION,
CARDMINDER,
SCANSANP_ORGANIZER,
SCANSANP_MANEGER,
SCANSANP_MANULUL,
SCANASANP_CLOUD_TEMP,
SCANSNAP_RECEIPT_FULL_TEMP,
SCANSNAP_RECEIPT_UPDATE_TEMP
};
// ClogCollectApp:
// このクラスの実裝については、logCollect.cpp を參照してください。
//
class ClogCollectApp : public CWinApp
{
public:
ClogCollectApp();
// 畫面を最前面に表示する
void SetForegroundEx(HWND hWnd);
// ダイアログ全體のフォント
CFont m_fDefaultFont;
//アンインストール待ち畫面
//CWaitingDlg* m_waitingDlg;
// オーバーライド
public:
virtual BOOL InitInstance();
// 二重起動の時、アプリ終了フラグ
BOOL m_isCloseWithMutex;
// OS バージョン
CString m_strWinVer;
//アンインストール待ち畫面
//CWaitingDlg* m_waitingDlg;
// 実裝
DECLARE_MESSAGE_MAP()
private:
// 多重起動防止用ミューテックス
HANDLE m_hMutex;
// Start Mode
CString m_strStartMode;
};
extern ClogCollectApp theApp;