unit GlobalDefine; interface uses Winapi.Windows, Winapi.Messages; const MUTEX_KILL = 'Global\eCrm!Kill220411'; MUTEX_SERVICE = 'Global\eCrm!Svc220411'; MUTEX_AGENT = 'Global\eCrm!Agt220411'; MUTEX_INSTALLER = 'Global\eCrm!agtinst220510'; MUTEX_UNINSTALL = 'Global\eCrm$agtinst220607'; MUTEX_SCREENLOGO = 'Global\BsScreenLogo230502'; MUTEX_LICENSE = 'Global\L29sk!assldz)'; MUTEX_AFTERREPORT = 'Global\#dlf03Fs'; MUTEX_MH = 'Global\mh20260107bs1'; MUTEX_SHELL_MIPENC = 'Global\bsone@mipenc'; MUTEX_SHELL_DRMENC = 'Global\bsone@drmenc'; MUTEX_SHELL_DRMDEC = 'Global\bsone@drmdec'; MUTEX_SHELL_EXPT_PRTWATER = 'Global\exptwater'; // MUTEX_SHELL_DRMOPEN = 'Global\bsone@drmopen'; BS1HOOK_DRIVERTAG = 'bs1HookDriver'; BS1HOOK_DRIVERNAME32 = 'bsonex32.sys'; BS1HOOK_DRIVERNAME64 = 'bsonex64.sys'; WM_REQUEST_DRM = WM_USER + 1245; WM_REQUEST_APPROVAL = WM_USER + 9674; WM_DONE_APPROVAL = WM_USER + 9675; WM_SCREEN_CAPTURE_BLOCK = WM_DONE_APPROVAL + 1; NAME_SERVICE_OLD = 'eCrmHeService'; NAME_SERVICE = 'SvcCrmHe'; REG_HE = 'SOFTWARE\eCrmHomeEdition'; REG_HE32 = 'SOFTWARE\WOW6432Node\eCrmHomeEdition'; REG_BS1_SHELL = 'CLSID\{FD43588C-B83F-4157-8D58-30A5BE32F46D}'; REG_SVC = 'SYSTEM\ControlSet001\Services\SvcCrmHe\'; REG_IMGPATH = '%SystemRoot%\system32\svchost.exe -k ' + NAME_SERVICE; REG_OUTPLUG = 'Software\Microsoft\Office\Outlook\AddIns\BS1OutlookAddIn.CoBS1OutlookAddIn\'; // REG_BS1_OVI_DRM = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ BSOne1'; // REG_BS1_OVI_AIP = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ BSOne2'; REG_BS1_OVI_DRM = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ BSOne1'; REG_BS1_OVI_AIP = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ BSOne2'; DIR_TG = 'Tocsg\'; DIR_CONF = 'conf\'; DIR_HE = DIR_TG + 'eCrmHome\'; DIR_LOG = 'Log\'; DIR_AIP12 = 'AIP\'; DIR_AIP14 = 'AIP14\'; DIR_AIP17 = 'AIP17\'; DIR_KV = 'bin\'; DIR_CACHE = 'Cache\'; DIR_XPRINT = 'bsoneprint\'; DLL_SV = 'eCrmHeServiced.dll'; EXE_SV = 'eCrmHeService.exe'; EXE_SL = 'eCrmServicelib.exe'; EXE_HE = 'eCrmHomeEdition.exe'; EXE_MG = 'eCrmHomeManager.exe'; EXE_RT = 'eCrmResoluter.exe'; EXE_IC = 'eCrmInterCaller.exe'; EXE_KF = 'eCrmHeRun.exe'; // 금융결제원에 에이전트 식별 더미 EXE_GC = 'ToCSGappCollector.exe'; EXE_CS = 'KvCttSch.exe'; EXE_CW = 'KvCttSchw.exe'; EXE_KV = 'kvoop.exe'; EXE_HP = 'eCrmHeHelper.exe'; EXE_LB = 'eCrmHlib.exe'; EXE_OCR = 'BSWmcr.exe'; EXE_SPL = 'Bs1psf.dat'; EXE_TRUST = 'Bs1tri.exe'; EXE_AIP = 'BSOne-AIP-Decrypt.exe'; EXE_AIP12 = 'BSOne-AIP-Decrypt.exe'; EXE_AIP14 = 'BSOne-AIP-Decrypt14.exe'; EXE_AIP17 = 'BSOne-AIP-Decrypt17.exe'; EXE_xPrintSvc = 'BSoneprintclient64.exe'; EXE_xPrintUI = 'xPrintTest.exe'; EXE_ScrRcd = 'bs1rcd.exe'; EXE_BROWSER_SECU = 'browsec.exe'; // todo : 테스트 기능, 삭제 필요 25_1124 DAT_AIPUP = 'AipUP.dat'; DAT_AIPUP17 = 'AipUP17.dat'; BAT_HE = 'eCrmHBatch.bat'; INI_HE = 'eCrmHomeEdition.ini'; DLL_OT = 'Bs1out.dll'; DLL_OT64 = 'Bs1out64.dll'; DLL_OVI_DRM = 'Bs1ovi.dll'; DLL_OVI_AIP = 'Bs1ovm.dll'; DLL_ST64 = 'LabGuard_Layer_x64.dll'; DLL_FAS64 = 'WorkPackagerV3_64.dll'; DLL_PDFIUM = 'pdfium.dll'; DAT_PTNSCH = 'ptnsch.dat'; // 검색 패턴 데이터 EXE_SafePCUninst = 'Uninst.exe'; // 신한카드 safePC 삭제 프로그램 23_0109 14:51:24 kku EXE_PT = 'eCrmHomePatch.exe'; ZIP_PT = 'patch.zip'; LOG_PATCH = 'HePatch.log'; LOG_RESTART = 'HeRestart.log'; INI_FORCEHE = '$ForceHE.ini'; //mgkim DAT_SERVERINFO = 'si.dat'; DAT_CTTSCHRST = 'SchRstInfo.dat'; DAT_CTTSCHRSTDATA = 'SchRstData.dat'; DAT_CTTSCHRSTDATA_CUSTOM = 'SchRstData.dat'; DAT_CTTSCHRSTDATA_EXP = 'SchRstDataExp.dat'; DAT_CTTSCHOPT = 'SchOpt.dat'; BYE_ENDSESSION = 'HeReboot.bye'; NAME_PREF = 'pdmsa'; EXT_PROP = '.prop'; DAT_PREF = NAME_PREF + EXT_PROP; // 정책 정보 DAT_AGENT = 'admsa.prop'; // 에이전트 정보 DAT_COMPANY = 'cdmsa.prop'; // 업체 타입, 접속 정보등 DAT_CTTSCH = 'csmsa.prop'; // 개인정보 검출 작업 정보 DAT_CLTFLD = 'cfmsa.prop'; // 지정된 폴더에서 파일 수집 DAT_CTTSCHEXCEPT = 'edmsa.prop'; // 개인정보 검사 예외 해시 DAT_CAMPEXCEPT = 'cmpexp.prop'; // 캠페인 개인정보 검사 예외 DAT_PRTWTEXCEPT = 'pwexp.prop'; // 프린트 워터마크 예외 PROP_USERINFO = 'InstPrep.props'; // 구버전 사번 정보 DAT_CAMPN = 'cmpmsa.prop'; // 캠패인 정보 DAT_RULE = 'rumsa.prop'; // 룰 정보 DAT_FIXDISK = 'fxdsa.prop'; // 고정 디스크 정보 DAT_SNAPTAGKEY_S = 'stmdk.dat'; // 스냅태그 키파일 - 상시로고 DAT_SNAPTAGKEY_P = 'stmdp.dat'; // 스냅태그 키파일 - 프린트 DAT_FILEEXP = 'fesa.dat'; // 파일 반출 정보 PNG_SNAPTAGDATA_LOGO = 'stig.png'; // 스냅태그 생성 이미지 - 상시로고 PNG_SNAPTAGDATA_PRT = 'stigprt.png'; // 스냅태그 생성 이미지 - 출력 DIR_CTTSCHRST = 'CttSchRst\'; DIR_CTTSCHRST_BACKUP = 'CttSchRstBk\'; DIR_CTTSCHRST_CUSTOM = 'CustomCttSchRst\'; PASS_STRENC = '(skd82_sl9+a'; // KvCttSch.exe (ThdCttSch.pas)에서 사용, 수정 시 주의 // DRM_EXTS = 'doc|docx|xls|xlsx|ppt|pptx|hwp|hwpx|txt|pdf'; // DRM 적용 확장자 170개 23_0216 15:10:19 kku DRM_EXTS = 'TXT|LOG|DOC|WPS|PDF|XLS|PPT|HWP|DOCX|DOTX|XLSX|XLTX|PPTX|POTX|' + 'PPSX|HW|RTF|MW|OW|WP|WP4|WPD|WOP|WM|PW|WMF|WS|WSD|DIF|MWK|W40|WDB|CSV|' + 'WS2|SMTP|EML|MBX|STE|AW|UNI|WKS|WK1|WK3|WK4|FM3|LWP|MWP|XLC|XLM|123|PWD|' + 'MPP|VSD|MSG|OFT|VDX|SXW|SXC|STC|SXI|NSF|DOCM|DOTM|XLSM|XLTM|XLAM|PPTM|' + 'POTM|PPSM|PPAM|XLSB|XPS|DXL|ODT|ODS|ODP|ONM|GRV|PAGES|NUMBERS|KEY|XDW|' + 'ONE|DCM|MLS|ML3|ML4|ML5|ML6|ML7|ML8|ML9|MLA|EMCMF|ACCDT|GUL|JNT|MAT|FIG|' + 'OLM|VCF|ICS|VCS|IWA|VSSX|VSTX|VSTM|SDW|SGL|VOR|SDC|SDD|SDA|SMF|YML|SCPT|' + 'MB|JT|MO|QM|IV|PBIX|IBOOKS|FDF|XFDF|MSO|RSS|SMIL|XSPF|FB2|PPJ|RDF|RSD|SBML|' + 'SRU|SSML|PLS|TEI|METS|MODS|OPF|SRGS|SRX|VXML|CCXML|YIN|CML|VTU|SXD|SXG|ODM|' + 'OTH|FODP|FODS|FODT|OXT|SVM|XDF|HTM|HTML|ASF|MHT|MHTML|MXML|MXL|XML|ASP|METALINK|XDP|XUL'; IMAGE_EXTS = 'JPG|PNG|JPE|JPEG|BMP|GIF|TIFF|PCX'; AIP_EXTS = 'DOC|DOCX|XLS|XLSX|PPT|PPTX|PDF|XLSM|XLSB|XLTX|XLTM|XLT|XPS|DOCM|DOTX|' + 'DOTM|DOT|PPTM|XPS|PPSX|PPSM|PPS|POT'; PASS_DRM_HEAD: AnsiString = '#df12mf8(zfq@'; // KvCttSch.exe (ThdCttSch.pas)에서 사용, 수정 시 주의 // PASS_DRM_DATA: AnsiString = '39(sdo2kJ=Adif$Fzsd'; SIG_DRM: AnsiString = 'ToCSG'; URI_SYSTEM = 'System'; URI_USERUPDATE = 'UserUpdate'; URI_CONNECT = 'Connection'; URI_CONFIGURATION = 'Configuration'; URI_DB_DELETE = 'DBDelete'; URI_USER_ACTION = 'UserBehavior'; URI_POLICYUPDATE = 'PolicyUpdate'; URI_AGENTCHECK = 'AgentCheck'; SYSEVT_AGENT_PATCH = '50001'; // SYSEVT_AGENT_PATCH_FAIL = '52101'; SYSEVT_AGENT_INSTALL = '50002'; SYSEVT_AGENT_UNINSTALL = '50003'; MODE_SECURITY_START = '50015'; // LOGCODE_EVENT_VPNCONNECT MODE_SECURITY_END = '50018'; // LOGCODE_EVENT_VPNDISCONN MODE_VULNER_START = '50037'; // LOGCODE_EVENT_VULCONNECT MODE_VULNER_END = '50038'; MODE_OFFLINE_START = '50090'; MODE_OFFLINE_END = '50091'; MODE_EXCEPTION_START = '50092'; MODE_EXCEPTION_END = '50093'; SYSEVT_WORKREPORT = '50016'; SYSEVT_CUSTOMEXPTION = '50094'; REQUEST_QNA = '50021'; SYSEVT_AGREEINFO = '50095'; STATUS_PASSWORD = '50000'; STATUS_AV = '50004'; STATUS_FW = '50089'; STATUS_OS = '50005'; STATUS_SCRNSAVER = '50008'; STATUS_ACCESS_BLOCK = '50012'; STATUS_SCANINFO = '50064'; STATUS_CLEAN = '50065'; AUDIT_AGENT_PATCH_FAIL = '52801'; LOGCODE_PREVENT_PRINTER = '50006'; LOGCODE_EVENT_PRINTER = '50028'; LOGCODE_PREVENT_CLIPBOARD = '50007'; LOGCODE_PREVENT_FILEIO = '50009'; LOGCODE_PREVENT_PORT = '50010'; LOGCODE_EVENT_NETWORKREFRESH = '50011'; LOGCODE_PREVENT_WHITELISTAPP = '50013'; LOGCODE_APP_INSTALLATION = '50014'; LOGCODE_EVENT_WIFIDETECT = '50017'; LOGCODE_EVENT_WIFIBLOCK = '50027'; LOGCODE_PREVENT_FILEMASK = '50019'; LOGCODE_PREVENT_WATERMARK = '50020'; LOGCODE_PREVENT_SOFTWARE = '50022'; LOGCODE_EVENT_USB_REQUEST = '50023'; LOGCODE_EVENT_SCRNLOCK = '50025'; LOGCODE_PREVENT_FILEMONITOR = '50026'; LOGCODE_PREVENT_USB = '50029'; MONITOR_USB = '50105'; MONITOR_USB_EXCEPTED = '52604'; LOGCODE_PREVENT_ROUTE = '50030'; LOGCODE_PREVENT_DOMAIN = '50031'; LOGCODE_MONITOR_DOMAIN = '50032'; LOGCODE_EVENT_MTP = '50035'; LOGCODE_PREVENT_MTP = '50036'; MONITOR_BLUETOOTH = '50033'; PREVENT_BLUETOOTH = '50034'; SYSEVT_AGENT_PWDEXPIRED = '50072'; PREVENT_PRINTER_WATERMARK = '50039'; PREVENT_WEB_ATTACH_UPDOWN = '50041'; MONITOR_WEB_ATTACH_UPDOWN = '50042'; PREVENT_OUTLOOK_ATTACH = '50043'; MONITOR_OUTLOOK_ATTACH = '50044'; PREVENT_PROCESS_ATTACH_UPDOWN = '50045'; MONITOR_PROCESS_ATTACH_UPDOWN = '50046'; PREVENT_DRM_ENCRYPT = '50047'; PREVENT_DRM_DECRYPT = '50048'; MONITOR_DRM_OPEN = '50056'; PREVENT_DRM_OPEN = '50066'; PREVENT_SCREENLOGO = '50050'; PREVENT_FILEDELETE = '50051'; MONITOR_FILE_SCAN = '50049'; // MONITOR_FILE_COLLECT = '50055'; SYSEVT_RESTART = '50052'; SYSEVT_SHUTDOWN = '50053'; SYSEVT_APP_DELETE = '50054'; MODE_CA_APPLY = '50040'; STATUS_FILESCAN = '50024'; PREVENT_FILERENAME = '50057'; MONITOR_FILERENAME = '50058'; MONITOR_CLIPBOARD = '50059'; MONITOR_NETSHAREFOLDER = '50060'; PREVENT_NETSHAREFOLDER = '50061'; SYSEVT_FILE_COLLECT = '50062'; SYSEVT_APP_REQUEST = '50063'; SYSEVT_REQ_AGENT_UNINSTALL = '50067'; MONITOR_CAPTURE_APP = '50068'; PREVENT_CAPTURE_APP = '50069'; REQUEST_PRINT_EXCEPT = '50071'; PREVENT_CDROM = '50073'; MONITOR_CDROM = '50074'; PREVENT_CAPTURE_URL = '50075'; RELEASE_CAPTURE_URL = '50076'; PREVENT_CAPTURE_WINDOW = '50077'; RELEASE_CAPTURE_WINDOW = '50078'; PREVENT_SCREENLOGO_IF = '50079'; RELEASE_SCREENLOGO_IF = '50080'; PREVENT_CAPTUREAPP_IF = '50081'; RELEASE_CAPTUREAPP_IF = '50082'; MONITOR_OUTLOOK_BODY = '50083'; PREVENT_OUTLOOK_BODY = '50085'; MONITOR_OUTLOOK_RECIPIENT = '50084'; PREVENT_OUTLOOK_MASKING = '50086'; PREVENT_OUTLOOK_REMOVE_RECIPIENT = '50088'; PREVENT_WEB_DOWNLOAD = '51003'; MONITOR_WEB_DOWNLOAD = '51004'; PREVENT_WEB_ATTACH = '52500'; MONITOR_WEB_ATTACH = '52600'; PREVENT_PROCESS_DOWNLOAD = '51005'; MONITOR_PROCESS_DOWNLOAD = '51006'; PREVENT_PROCESS_ATTACH = '52501'; MONITOR_PROCESS_ATTACH = '52601'; LOG_CHANGE_EMPNO = '52700'; LOG_REG_BASIC_PORT_BLOCK = '52701'; LOG_REG_USER_PORT_BLOCK = '52702'; LOG_RESTORE_FIREWALL_SET = '52703'; // kj 임의 추가 MONITOR_PROCESS_EXECUTE = '50501'; SYSEVT_STOP_CAMPN_FILEENC = '50502'; MONITOR_SOFTWARE = '50503'; PREVENT_TETHERING = '50504'; MONITOR_IP_CHANGE = '50505'; MONITOR_PC_POWER = '50506'; REQUEST_APPROVAL = '50507'; RESPONSE_APPROVAL = '50508'; REQUEST_REG_PERINFO = '50509'; MONITOR_NETFOLDER_FILE = '52602'; PREVENT_NETFOLDER_FILE = '52502'; SYSEVT_PROTECT_PCTIME = '50111'; // PC 시스템 시간 변경 차단 (원래 시간으로 복구) SYSEVT_HEALTHCHECK_PERIOD = '50112'; // 에이전트 통신 주기 변경 (초) PREVENT_SCREENLOGO_BOLD = '50108'; // 상시 로고 진하게 적용 PREVENT_SCREENLOGO_THIN = '50109'; // 상시 로고 연하게 (정상상태) 적용 PREVENT_SCREENLOGO_WINCAP_EXCEPT = '50110'; // Win 캡쳐 예외 적용 MONITOR_EMBEDDEDHARDDISK = '50107'; MONITOR_appScreenRec = '52603'; POST_TIMEOUT = ':readTO'; TYPE_MSG_SAFEAPPLIED = 10001; TYPE_MSG_OLD_WINDOWS = 10002; TYPE_MSG_VUL_OS = 10003; TYPE_MSG_VUL_PW = 10004; TYPE_MSG_VUL_AV = 10005; TYPE_MSG_VUL_FW = 10006; TYPE_MSG_VUL_SCREEN = 10007; TYPE_MSG_VUL_ALLOWACCESS = 10008; TYPE_MSG_VUL_EMPNO = 10009; TYPE_MSG_VUL_SCAN = 10010; TYPE_MSG_NOTIFICATION = 10151; TYPE_MSG_UPDATE = 10152; TYPE_MSG_AFTERREPORT = 10153; TYPE_MSG_PREVENT_CLIPBOARD = 10101; TYPE_MSG_PREVENT_USBDISCONN = 10102; TYPE_MSG_PREVENT_FILECHANGE = 10103; TYPE_MSG_PREVENT_ROUTERCHANGE = 10104; TYPE_MSG_PREVENT_TEMPCONN = 10105; TYPE_MSG_PREVENT_WARTERMARK = 10106; TYPE_MSG_PREVENT_BLACKAPP = 10107; TYPE_MSG_PREVENT_WHITEAPP = 10108; TYPE_MSG_PREVENT_FILEMASK = 10109; TYPE_MSG_PREVENT_FILEDRMENC = 10122; TYPE_MSG_PREVENT_FILEWRITE = 10110; TYPE_MSG_PREVENT_URL = 10111; TYPE_MSG_PREVENT_INSTALL = 10112; TYPE_MSG_PREVENT_WIFI = 10113; TYPE_MSG_PREVENT_BLUETOOTH = 10114; TYPE_MSG_PREVENT_MTP = 10115; TYPE_MSG_PREVENT_PRINTER = 10116; TYPE_MSG_PREVENT_FILERENAME = 10123; TYPE_MSG_PREVENT_SHAREDFOLDER = 10304; TYPE_MSG_EVENT_PRINTWATER = 10117; TYPE_MSG_EVENT_ATTACHFILE = 10118; TYPE_MSG_PREVENT_ATTACHFILE = 10119; TYPE_MSG_EVENT_DRM_ENCRYPT = 10120; TYPE_MSG_EVENT_DRM_OPEN = 10121; TYPE_MSG_EVENT_DRM_BLOCK = 10305; TYPE_MSG_EVENT_DRM_BLOCK_CT = 10306; TYPE_MSG_EVENT_DRM_OPEN_NO_MODIFY = 10307; TYPE_MSG_PREVENT_CAPAPP = 10308; TYPE_MSG_CTTSCH_START = 10302; TYPE_MSG_CTTSCH_COMPLETE = 10301; TYPE_MSG_CTTSCH_VULMODE = 10303; TYPE_MSG_CAMPN_FILEENC = 10211; TYPE_MSG_SYSTEM_VPNCLOSED = 10201; TYPE_MSG_SYSTEM_NETWORKCLOSE = 10202; TYPE_MSG_MONITOR_USB = 10203; TYPE_MSG_PREVENT_CDROM = 10204; TYPE_MSG_MONITOR_CDROM = 10205; TYPE_MSG_VUL_PW_LAST_CHANGE = 10206; TYPE_MSG_OUTLOOK_CATCH = 10207; TYPE_MSG_OUTLOOK_BLOCK = 10208; TYPE_MSG_OUTLOOK_ADDIN_OK = 10209; TYPE_MSG_RELEASE_QUARANTINE_FILE = 10210; TYPE_MSG_MTP_WRITE_BLOCK = 10212; TYPE_CHANGE_MODE = 10213; TYPE_MSG_PREVENT_TETHERING = 10214; TYPE_MSG_MONITOR_HARDDISK = 10218; TYPE_REQ_APPROVAL = 10215; TYPE_RES_APPROVAL = 10216; TYPE_EMPTY_PERSONAL_INFO = 10217; TYPE_MSG_MONITOR_FILEOPER = 10219; TYPE_MSG_PREVENT_FILEOPER = 10220; TYPE_MSG_APP_SCREEN_RECORD = 10221; TYPE_MSG_MONITOR_APP = 10222; NOTI_HOOK_MONITOR_PRINT_WATER = 1; NOTI_HOOK_MONITOR_ATTACH = 2; NOTI_HOOK_BLOCK_ATTACH = 3; NOTI_HOOK_OPEN_DRM = 4; NOTI_HOOK_BLOCK_DRM = 5; NOTI_HOOK_BLOCK_DRM_CT = 6; NOTI_HOOK_OPEN_DRM_NO_MODIFY = 7; NOTI_HOOK_BLOCK_MTP_WRITE = 8; NOTI_HOOK_OPEN_DOC = 9; // MAP_FILENAME_APIHOOK = 'Global\HeHook@220921'; // old MAP_FILENAME_APIHOOK = 'Global\BsHook@230317'; // DRM 정보 초기화 시에만 사용 // WM_CATCH_PRINT = WM_USER + 2457; WM_NOTIFY_HOOKDATA = WM_USER + 2458; DLL_HOOK = 'eCrmHeHelper.dll'; DLL_HOOK32 = 'eCrmHeHelper32.dll'; // DLL_HOOK_PDF = 'eCrmHeHelperf.dll'; // DLL_HOOK32_PDF = 'eCrmHeHelper32f.dll'; DLL_SHELL = 'Bs1shl.dll'; {$IFDEF DEBUG} WEB_BROWSERS = 'iexplore.exe|msedge.exe|whale.exe|firefox.exe|opera.exe|vivaldi.exe|brave.exe'; // WEB_BROWSERS = 'iexplore.exe|msedge.exe|whale.exe|chrome.exe|firefox.exe|opera.exe|vivaldi.exe|brave.exe'; {$ELSE} WEB_BROWSERS = 'iexplore.exe|msedge.exe|whale.exe|chrome.exe|firefox.exe|opera.exe|vivaldi.exe|brave.exe'; {$ENDIF} CJ_EMPTY_EMPNO = ':Empty'; EMPTY_URL_MSG = 'Not found url.'; type TDrmAccessKind = (dakNone, dakEmpNo, dakDept, dakAll); TUsingABKind = (uakNone, uakOutlook, uakWebb, uakEtc); TAttachBlockKind = (abkNone, abkBlock, _abkPopup{안씀}, abkLog, abkUrlBlock, abkUrlAllow); TFileMonKind = (fmkNone, fmkAll, fmkIncExt, fmkIgrExt); TContentFilter = record bActive: Boolean; sPatterns: String; nHitLimit: Integer; end; TAttachBlockPolicy = record Kind: TAttachBlockKind; ContentFilter: TContentFilter; bPopup, bReadBlock, bWriteBlock, bCollectTxt, bCollectFile: Boolean; bUpAllowLog, bUpBlockLog, bUpColAllowTxt, bUpColAllowFile, bUpColBlockTxt, bUpColBlockFile, bDlAllowLog, bDlBlockLog, bDlColAllowTxt, bDlColAllowFile: Boolean; end; TDrmInfo = record dwCustomerType: DWORD; DrmAccessKind, DrmModifyKind: TDrmAccessKind; sTaskDir, sDrmPass, sEmpNo, sDeptName: array [0..2048] of Char; end; TPrtWaterCfg = record bActive: Boolean; sTopText, sBotText: String; nTopSize, nBotSize, nTopPos, nBotPos: Integer end; // 공유폴더 파일 생성 감시/차단 TShFileCrMon = record sMode: String; // secu, sleep, vul, off, exp nKind: Integer; // 0 : none, 1 : monitor, 2 : block bBlkNoti, bMonNoti: Boolean; sExpLst: String; end; TIntBlockNewFile = record mode : TAttachBlockKind; userAlert: Boolean; extList: string; excList: string; origTextCol: Boolean; origFileCol_use : Boolean; origFileCol_maxMb: Integer; origFileCol_minMb: Integer; fileNameChk : Boolean; contentsFilter_use : Boolean; contentsFilter_list: string; blockByFilename_use: Boolean; blockByFilename_list: string; blockBySig_use: Boolean; blockBySig_list: string; blockBySizeLimit_use: Boolean; blockBySizeLimit_minMb: Integer; end; function EncText(sText: String): String; inline; function DecText(sText: String): String; inline; implementation uses Tocsg.Encrypt; function EncText(sText: String): String; inline; begin Result := ':' + EncStrToBinStr(ekAes256cbc, PASS_STRENC, sText); end; function DecText(sText: String): String; inline; begin Result := ''; if Length(sText) < 2 then exit; if sText[1] = ':' then begin Delete(sText, 1, 1); Result := DecBinStrToStr(ekAes256cbc, PASS_STRENC, sText); end else Result := sText; end; end.