add an arg to prevent dcd to launch, close #225

This commit is contained in:
Basile Burg 2018-01-25 06:37:55 +01:00
parent fdae75c40b
commit 4353e43bb0
2 changed files with 16 additions and 2 deletions

View File

@ -61,6 +61,7 @@ type
destructor destroy; override; destructor destroy; override;
// //
class procedure relaunch; static; class procedure relaunch; static;
class function noDcdPassedAsArg: boolean; static;
// //
procedure addImportFolders(const folders: TStrings); procedure addImportFolders(const folders: TStrings);
procedure addImportFolder(const folder: string); procedure addImportFolder(const folder: string);
@ -99,7 +100,8 @@ begin
if fname.fileExists then if fname.fileExists then
loadFromFile(fname); loadFromFile(fname);
// //
fAvailable := exeInSysPath(clientName) and exeInSysPath(serverName); fAvailable := exeInSysPath(clientName) and exeInSysPath(serverName)
and not noDcdPassedAsArg();
if not fAvailable then if not fAvailable then
exit; exit;
// //
@ -138,6 +140,19 @@ begin
EntitiesConnector.addObserver(self); EntitiesConnector.addObserver(self);
end; end;
class function TCEDcdWrapper.noDcdPassedAsArg(): boolean;
var
i: integer;
begin
result := false;
for i := 1 to argc-1 do
if ParamStr(i) = '-nodcd' then
begin
result :=true;
break;
end;
end;
class procedure TCEDcdWrapper.relaunch; class procedure TCEDcdWrapper.relaunch;
begin begin
fDcdWrapper.Free; fDcdWrapper.Free;

View File

@ -399,7 +399,6 @@ type
procedure widgetDockingChanged(sender: TCEWidget; newState: TWidgetDockingState); procedure widgetDockingChanged(sender: TCEWidget; newState: TWidgetDockingState);
procedure mnuOptsItemClick(sender: TObject); procedure mnuOptsItemClick(sender: TObject);
// ICEMainMenu // ICEMainMenu
function singleServiceName: string; function singleServiceName: string;
function mnuAdd: TMenuItem; function mnuAdd: TMenuItem;