Commit 7c9837e1 authored by PA-ROGS\whitrail's avatar PA-ROGS\whitrail
Browse files

2024.03.25 - WMI 오류가 발생되는 사용자의 PC로 폰트바다3 매니저 설치가 진행되지 않아 WMI 서비스를 사용하지 않는 버전을 임시적으로 제작하여 지원함.

parent e87a3f70
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
#define MyAppName "폰트바다 매니저" #define MyAppName "폰트바다 매니저"
#define MyAppVersion "3.0" #define MyAppVersion "3.0"
#define MyAppVerName "36.MR" #define MyAppVerName "36.MR"
#define MyAppBuildData "B23061301.W10DNF4" #define MyAppBuildData "B23061301.W10DNF4.NoUseWMI"
#define MyAppPublisher "(주)한양정보통신" #define MyAppPublisher "(주)한양정보통신"
#define MyAppURL "http://www.fontbada.co.kr/" #define MyAppURL "http://www.fontbada.co.kr/"
#define MyAppFolderName "FontbadaManager" #define MyAppFolderName "FontbadaManager"
...@@ -77,58 +77,7 @@ type ...@@ -77,58 +77,7 @@ type
var var
ExitCode: Boolean; ExitCode: Boolean;
function GetProcessList(const Filter: string; out List: TProcessEntryList): Integer;
var
I: Integer;
WQLQuery: string;
WbemLocator: Variant;
WbemServices: Variant;
WbemObject: Variant;
WbemObjectSet: Variant;
begin
Result := 0;
WbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
WbemServices := WbemLocator.ConnectServer('localhost', 'root\CIMV2');
WQLQuery := 'SELECT ProcessId, Name FROM Win32_Process WHERE Name LIKE "%' + Filter +'%"';
WbemObjectSet := WbemServices.ExecQuery(WQLQuery);
if not VarIsNull(WbemObjectSet) and (WbemObjectSet.Count > 0) then
begin
Result := WbemObjectSet.Count;
SetArrayLength(List, WbemObjectSet.Count);
for I := 0 to WbemObjectSet.Count - 1 do
begin
WbemObject := WbemObjectSet.ItemIndex(I);
if not VarIsNull(WbemObject) then
begin
List[I].PID := WbemObject.ProcessId;
List[I].Name := WbemObject.Name;
end;
end;
end;
end;
function IsFontManagerProcesss: Boolean;
var
I: Integer;
Filter: string;
ProcessList: TProcessEntryList;
begin
Filter := '{#MyAppFilter}';
Result := false;
if GetProcessList(Filter, ProcessList) > 0 then
for I := 0 to (GetArrayLength(ProcessList) - 1) do
begin
if CompareText(Filter, ProcessList[I].Name) = 0 then
begin
Result := True;
Exit;
end
end;
end;
function IsFontbadaManagerWindow: Boolean; function IsFontbadaManagerWindow: Boolean;
begin begin
Result := (FindWindowByWindowName('{#MyAppWindowName}') <> 0); Result := (FindWindowByWindowName('{#MyAppWindowName}') <> 0);
...@@ -218,17 +167,6 @@ begin ...@@ -218,17 +167,6 @@ begin
end; end;
function CheckRunProcess: Boolean;
begin
Result := True;
if IsFontManagerProcesss and IsFontbadaManagerWindow then
begin
MsgBox('폰트바다 매니저({#MyAppWindowName})가 실행 중입니다. 정상 종료(로그 아웃) 후 다시 실행해 주세요.', mbCriticalError, MB_OK);
Result := False;
end;
end;
function InitializeSetup: Boolean; function InitializeSetup: Boolean;
var var
ResultCode: Integer; ResultCode: Integer;
...@@ -243,12 +181,6 @@ begin ...@@ -243,12 +181,6 @@ begin
Exit; Exit;
end end
// 폰트바다 매니저 실행 상태 확인
if CheckRunProcess = False then
begin
Exit;
end
// 언인스톨러 확인 // 언인스톨러 확인
if RegValueExists(HKEY_LOCAL_MACHINE,'Software\Microsoft\Windows\CurrentVersion\Uninstall\{A2670E5F-4D34-4042-A9C5-5A3BC9547B37}_is1', 'UninstallString') then if RegValueExists(HKEY_LOCAL_MACHINE,'Software\Microsoft\Windows\CurrentVersion\Uninstall\{A2670E5F-4D34-4042-A9C5-5A3BC9547B37}_is1', 'UninstallString') then
begin begin
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment