Skip to content

Commit 60dad3f

Browse files
authored
Merge pull request #14 from DarkCoderSc/dev-2-0-2
- Updated NeoFlat Hint Component and implemented it on the user list. When hovering over a user, a summary of remote peer information is displayed. - Implemented Copy/Move file or directory task in File Manager (Copy > Paste, Cut > Paste). The feature is reactive, with a virtual clipboard shared between File Manager windows (same user). Copy and Cut actions are indicated with special icons and font color, and shared across multiple File Manager windows. - Implemented Delete file or directory task in File Manager. The feature is reactive and shared between File Manager windows (same user). - Implemented Rename file or directory task in File Manager. The feature is also reactive. - Implemented Create new directory task in File Manager. The feature is also reactive. - Centralized application version information into a single manifest file, shared between different parts for easier modification (no need to edit version info for each project flavor and architecture in Delphi IDE). - Code improvements, addressing a few minor, rarely occurring bugs and fixing some minor memory leaks. - Began implementing Delphi syntax best practices across the full codebase to comply with recommended standards.
2 parents b8eb317 + 46754de commit 60dad3f

158 files changed

Lines changed: 9181 additions & 6877 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Assets/featured_image.png

144 KB
Loading

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
11
# Changelogs
22

3+
## 2.0.2 (March 2026)
4+
5+
- Updated NeoFlat Hint Component and implemented it on the user list. When hovering over a user, a summary of remote peer information is displayed.
6+
- Implemented Copy/Move file or directory task in File Manager (Copy > Paste, Cut > Paste). The feature is reactive, with a virtual clipboard shared between File Manager windows (same user). Copy and Cut actions are indicated with special icons and font color, and shared across multiple File Manager windows.
7+
- Implemented Delete file or directory task in File Manager. The feature is reactive and shared between File Manager windows (same user).
8+
- Implemented Rename file or directory task in File Manager. The feature is also reactive.
9+
- Implemented Create new directory task in File Manager. The feature is also reactive.
10+
- Centralized application version information into a single manifest file, shared between different parts for easier modification (no need to edit version info for each project flavor and architecture in Delphi IDE).
11+
- Code improvements, addressing a few minor, rarely occurring bugs and fixing some minor memory leaks.
12+
- Began implementing Delphi syntax best practices across the full codebase to comply with recommended standards.
13+
314
## 2.0.1 (Feb 2026)
415

516
Version 2.0.1 is a significant quality update. The primary focus is to further enhance its already outstanding stability and simplify the build process for users with limited experience.

Client GUI/Assets/Resources/build.bat

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<BorlandProject>
33
<Transactions>
4-
<Transaction>2025/08/15 09:04:51.000.443,C:\Users\jples\Documents\Embarcadero\Studio\Projects\ProjectGroup1.groupproj=C:\Users\jples\Desktop\OptixGate\Client GUI\ClientGUIGroup.groupproj</Transaction>
4+
<Transaction>2025/08/15 09:04:51.000.443,C:\Users\jples\Desktop\OptixGate\Client GUI\ClientGUIGroup.groupproj=C:\Users\jples\Documents\Embarcadero\Studio\Projects\ProjectGroup1.groupproj</Transaction>
55
</Transactions>
66
<Default.Personality>
7-
<Projects ActiveProject="C:\Users\jples\Desktop\OptixGate\Client GUI\Client_GUI_OpenSSL.dproj"/>
7+
<Projects ActiveProject="C:\Users\jples\Desktop\Optix\Public\Client GUI\Client_GUI_OpenSSL.dproj"/>
88
</Default.Personality>
99
</BorlandProject>

Client GUI/Client_GUI.dpr

Lines changed: 35 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -53,32 +53,40 @@ uses
5353
Winapi.Windows,
5454
System.SysUtils,
5555
Vcl.Forms,
56-
Vcl.Themes,
57-
Vcl.Styles,
5856
OptixCore.Exceptions in '..\Core\OptixCore.Exceptions.pas',
5957
OptixCore.Sockets.Helper in '..\Core\Network\OptixCore.Sockets.Helper.pas',
60-
OptixCore.Protocol.Packet in '..\Core\Network\OptixCore.Protocol.Packet.pas',
6158
OptixCore.Sockets.Exceptions in '..\Core\Network\OptixCore.Sockets.Exceptions.pas',
62-
OptixCore.Commands in '..\Core\Commands\OptixCore.Commands.pas',
6359
OptixCore.Interfaces in '..\Core\OptixCore.Interfaces.pas',
6460
OptixCore.Thread in '..\Core\OptixCore.Thread.pas',
65-
OptixCore.Protocol.Client.Handler in '..\Core\Network\OptixCore.Protocol.Client.Handler.pas',
66-
OptixCore.System.InformationGathering in '..\Core\System\OptixCore.System.InformationGathering.pas',
67-
OptixCore.System.Process in '..\Core\System\OptixCore.System.Process.pas',
68-
OptixCore.SessionInformation in '..\Core\Commands\OptixCore.SessionInformation.pas',
69-
Optix.Protocol.SessionHandler in 'Units\Threads\Optix.Protocol.SessionHandler.pas',
70-
Optix.Protocol.Client in 'Units\Threads\Optix.Protocol.Client.pas',
71-
OptixCore.WinApiEx in '..\Core\OptixCore.WinApiEx.pas',
72-
OptixCore.System.Helper in '..\Core\System\OptixCore.System.Helper.pas',
7361
OptixCore.Types in '..\Core\OptixCore.Types.pas',
62+
OptixCore.Helper in '..\Core\OptixCore.Helper.pas',
63+
OptixCore.WinApiEx in '..\Core\OptixCore.WinApiEx.pas',
7464
OptixCore.LogNotifier in '..\Core\Commands\OptixCore.LogNotifier.pas',
7565
OptixCore.Classes in '..\Core\OptixCore.Classes.pas',
66+
OptixCore.ClassesRegistry in '..\Core\OptixCore.ClassesRegistry.pas',
67+
OptixCore.System.Helper in '..\Core\System\OptixCore.System.Helper.pas',
68+
OptixCore.System.InformationGathering in '..\Core\System\OptixCore.System.InformationGathering.pas',
69+
OptixCore.System.Process in '..\Core\System\OptixCore.System.Process.pas',
7670
OptixCore.System.FileSystem in '..\Core\System\OptixCore.System.FileSystem.pas',
71+
OptixCore.System.Registry in '..\Core\System\OptixCore.System.Registry.pas',
72+
OptixCore.Protocol.Packet in '..\Core\Network\OptixCore.Protocol.Packet.pas',
73+
OptixCore.Protocol.Client.Handler in '..\Core\Network\OptixCore.Protocol.Client.Handler.pas',
7774
OptixCore.Protocol.Preflight in '..\Core\Network\OptixCore.Protocol.Preflight.pas',
7875
OptixCore.Protocol.Exceptions in '..\Core\Network\OptixCore.Protocol.Exceptions.pas',
79-
Optix.Protocol.Worker.FileTransfer in 'Units\Threads\Optix.Protocol.Worker.FileTransfer.pas',
8076
OptixCore.Protocol.FileTransfer in '..\Core\Network\OptixCore.Protocol.FileTransfer.pas',
77+
OptixCore.SessionInformation in '..\Core\Commands\OptixCore.SessionInformation.pas',
78+
OptixCore.Commands in '..\Core\Commands\OptixCore.Commands.pas',
79+
OptixCore.Commands.Base in '..\Core\Commands\OptixCore.Commands.Base.pas',
80+
OptixCore.Commands.FileSystem in '..\Core\Commands\OptixCore.Commands.FileSystem.pas',
81+
OptixCore.Commands.Process in '..\Core\Commands\OptixCore.Commands.Process.pas',
82+
OptixCore.Commands.Shell in '..\Core\Commands\OptixCore.Commands.Shell.pas',
83+
OptixCore.Commands.Registry in '..\Core\Commands\OptixCore.Commands.Registry.pas',
84+
OptixCore.Commands.ContentReader in '..\Core\Commands\OptixCore.Commands.ContentReader.pas',
8185
OptixCore.Task.ProcessDump in '..\Core\Tasks\OptixCore.Task.ProcessDump.pas',
86+
OptixCore.Task.FileOperations in '..\..\Public\Core\Tasks\OptixCore.Task.FileOperations.pas',
87+
Optix.Protocol.SessionHandler in 'Units\Threads\Optix.Protocol.SessionHandler.pas',
88+
Optix.Protocol.Client in 'Units\Threads\Optix.Protocol.Client.pas',
89+
Optix.Protocol.Worker.FileTransfer in 'Units\Threads\Optix.Protocol.Worker.FileTransfer.pas',
8290
Optix.Actions.ProcessHandler in 'Units\Actions\Optix.Actions.ProcessHandler.pas',
8391
Optix.Helper in '..\Server\Units\Optix.Helper.pas',
8492
Optix.Constants in '..\Server\Units\Optix.Constants.pas',
@@ -87,57 +95,28 @@ uses
8795
uFormConnectToServer in 'Units\Forms\uFormConnectToServer.pas' {FormConnectToServer},
8896
uFormAbout in '..\Server\Units\Forms\uFormAbout.pas' {FormAbout},
8997
uFormDebugThreads in '..\Server\Units\Forms\uFormDebugThreads.pas' {FormDebugThreads},
90-
OptixCore.Commands.Base in '..\Core\Commands\OptixCore.Commands.Base.pas',
91-
OptixCore.ClassesRegistry in '..\Core\OptixCore.ClassesRegistry.pas',
92-
OptixCore.Commands.FileSystem in '..\Core\Commands\OptixCore.Commands.FileSystem.pas',
93-
OptixCore.Commands.Process in '..\Core\Commands\OptixCore.Commands.Process.pas',
94-
OptixCore.Commands.Shell in '..\Core\Commands\OptixCore.Commands.Shell.pas',
95-
OptixCore.Commands.Registry in '..\Core\Commands\OptixCore.Commands.Registry.pas',
96-
OptixCore.System.Registry in '..\Core\System\OptixCore.System.Registry.pas',
97-
OptixCore.Commands.ContentReader in '..\Core\Commands\OptixCore.Commands.ContentReader.pas',
98-
OptixCore.Helper in '..\Core\OptixCore.Helper.pas',
9998
uFormWarning in 'Units\Forms\uFormWarning.pas' {FormWarning};
10099

101100
{$R *.res}
102-
{$R ..\Server\data.res}
101+
102+
{$I Includes\ExtraResourceFiles.inc}
103103

104104
begin
105-
IsMultiThread := True;
106-
///
105+
{$I ..\Core\Includes\EntryPoint.inc}
106+
107+
{$I Includes\ClientDirectiveCheck.inc}
108+
109+
{$I Includes\ClientGUIDirectiveCheck.inc}
107110

108-
{$IFNDEF CLIENT}
109-
'The CLIENT compiler directive is missing from the project options. Please define it in the respective build '
110-
'configuration by navigating to Project > Options > Delphi Compiler > Conditional defines, and adding CLIENT.'
111-
{$ENDIF}
111+
{$I Includes\EnableWinPrivilegesOnStartup.inc}
112112

113-
{$IFNDEF CLIENT_GUI}
114-
'The CLIENT_GUI compiler directive is missing from the project options. Please define it in the respective build '
115-
'configuration by navigating to Project > Options > Delphi Compiler > Conditional defines, and adding CLIENT_GUI.'
116-
{$ENDIF}
117-
118-
var AUserUID := TOptixInformationGathering.GetUserUID();
119-
var AMutex := CreateMutexW(nil, True, PWideChar(AUserUID.ToString));
120-
if AMutex = 0 then
121-
raise EWindowsException.Create('CreateMutexW');
122-
try
123-
if GetLastError() = ERROR_ALREADY_EXISTS then
124-
Exit();
125-
///
113+
Application.Initialize;
126114

127-
// Enable certain useful privileges (if possible)
128-
TSystemHelper.TryNTSetPrivilege('SeDebugPrivilege', True);
129-
TSystemHelper.TryNTSetPrivilege('SeTakeOwnershipPrivilege', True);
115+
{$I ..\Core\Includes\ApplicationConfiguration.inc}
130116

131-
///
117+
Application.CreateForm(TFormMain, FormMain);
118+
Application.CreateForm(TFormAbout, FormAbout);
119+
Application.CreateForm(TFormDebugThreads, FormDebugThreads);
132120

133-
Application.Initialize;
134-
Application.MainFormOnTaskbar := True;
135-
Application.CreateForm(TFormMain, FormMain);
136-
Application.CreateForm(TFormAbout, FormAbout);
137-
Application.CreateForm(TFormDebugThreads, FormDebugThreads);
138-
// Application.CreateForm(TFormConnectToServer, FormConnectToServer);
139-
Application.Run;
140-
finally
141-
CloseHandle(AMutex);
142-
end;
121+
Application.Run;
143122
end.

Client GUI/Client_GUI.dproj

Lines changed: 21 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@
7676
<DCC_UsePackage>vclwinx;fmx;vclie;DbxCommonDriver;bindengine;IndyIPCommon;VCLRESTComponents;FireDACCommonODBC;FireDACCommonDriver;appanalytics;IndyProtocols;vclx;Skia.Package.RTL;IndyIPClient;dbxcds;vcledge;OMultiPanel_Design;bindcompvclwinx;bindcompfmx;inetdb;FireDACSqliteDriver;DbxClientDriver;soapmidas;vclactnband;fmxFireDAC;dbexpress;DBXMySQLDriver;VclSmp;inet;vcltouch;fmxase;dbrtl;Skia.Package.FMX;fmxdae;FireDACMSAccDriver;CustomIPTransport;NeoFlatComponents;vcldsnap;DBXInterBaseDriver;IndySystem;Skia.Package.VCL;vcldb;VirtualTreesR;OMultiPanel_Runtime;vclFireDAC;bindcomp;FireDACCommon;IndyCore;RESTBackendComponents;bindcompdbx;rtl;FireDACMySQLDriver;FireDACADSDriver;RESTComponents;DBXSqliteDriver;vcl;IndyIPServer;dsnapxml;dsnapcon;adortl;vclimg;FireDACPgDriver;FireDAC;inetdbxpress;xmlrtl;tethering;bindcompvcl;dsnap;CloudService;fmxobj;bindcompvclsmp;soaprtl;soapserver;FireDACIBDriver;$(DCC_UsePackage)</DCC_UsePackage>
7777
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
7878
<BT_BuildType>Debug</BT_BuildType>
79-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
8079
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
8180
<VerInfo_Locale>1033</VerInfo_Locale>
8281
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
@@ -91,7 +90,6 @@
9190
<DCC_UsePackage>vclwinx;fmx;vclie;DbxCommonDriver;bindengine;IndyIPCommon;VCLRESTComponents;FireDACCommonODBC;FireDACCommonDriver;appanalytics;IndyProtocols;vclx;IndyIPClient;dbxcds;vcledge;bindcompvclwinx;bindcompfmx;inetdb;FireDACSqliteDriver;DbxClientDriver;soapmidas;vclactnband;fmxFireDAC;dbexpress;DBXMySQLDriver;VclSmp;inet;vcltouch;fmxase;dbrtl;fmxdae;FireDACMSAccDriver;CustomIPTransport;vcldsnap;DBXInterBaseDriver;IndySystem;Skia.Package.VCL;vcldb;VirtualTreesR;vclFireDAC;bindcomp;FireDACCommon;IndyCore;RESTBackendComponents;bindcompdbx;rtl;FireDACMySQLDriver;FireDACADSDriver;RESTComponents;DBXSqliteDriver;vcl;IndyIPServer;dsnapxml;dsnapcon;adortl;vclimg;FireDACPgDriver;FireDAC;inetdbxpress;xmlrtl;tethering;bindcompvcl;dsnap;CloudService;fmxobj;bindcompvclsmp;soaprtl;soapserver;FireDACIBDriver;$(DCC_UsePackage)</DCC_UsePackage>
9291
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
9392
<BT_BuildType>Debug</BT_BuildType>
94-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
9593
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
9694
<VerInfo_Locale>1033</VerInfo_Locale>
9795
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
@@ -114,15 +112,13 @@
114112
</PropertyGroup>
115113
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
116114
<DCC_RemoteDebug>false</DCC_RemoteDebug>
117-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
118115
<VerInfo_Locale>1033</VerInfo_Locale>
119116
<Icon_MainIcon>..\Server\Assets\optix.ico</Icon_MainIcon>
120117
<VerInfo_MajorVer>2</VerInfo_MajorVer>
121118
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=2.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=2.0.0.0;Comments=</VerInfo_Keys>
122119
<AppExecutionLevel>requireAdministrator</AppExecutionLevel>
123120
</PropertyGroup>
124121
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
125-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
126122
<VerInfo_Locale>1033</VerInfo_Locale>
127123
<Icon_MainIcon>..\Server\Assets\optix.ico</Icon_MainIcon>
128124
<VerInfo_MajorVer>2</VerInfo_MajorVer>
@@ -136,15 +132,13 @@
136132
<DCC_DebugInformation>0</DCC_DebugInformation>
137133
</PropertyGroup>
138134
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
139-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
140135
<VerInfo_Locale>1033</VerInfo_Locale>
141136
<Icon_MainIcon>..\Server\Assets\optix.ico</Icon_MainIcon>
142137
<AppExecutionLevel>requireAdministrator</AppExecutionLevel>
143138
<VerInfo_MajorVer>2</VerInfo_MajorVer>
144139
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=2.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=2.0.0.0;Comments=</VerInfo_Keys>
145140
</PropertyGroup>
146141
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
147-
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
148142
<VerInfo_Locale>1033</VerInfo_Locale>
149143
<Icon_MainIcon>..\Server\Assets\optix.ico</Icon_MainIcon>
150144
<VerInfo_MajorVer>2</VerInfo_MajorVer>
@@ -157,28 +151,38 @@
157151
</DelphiCompile>
158152
<DCCReference Include="..\Core\OptixCore.Exceptions.pas"/>
159153
<DCCReference Include="..\Core\Network\OptixCore.Sockets.Helper.pas"/>
160-
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Packet.pas"/>
161154
<DCCReference Include="..\Core\Network\OptixCore.Sockets.Exceptions.pas"/>
162-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.pas"/>
163155
<DCCReference Include="..\Core\OptixCore.Interfaces.pas"/>
164156
<DCCReference Include="..\Core\OptixCore.Thread.pas"/>
165-
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Client.Handler.pas"/>
166-
<DCCReference Include="..\Core\System\OptixCore.System.InformationGathering.pas"/>
167-
<DCCReference Include="..\Core\System\OptixCore.System.Process.pas"/>
168-
<DCCReference Include="..\Core\Commands\OptixCore.SessionInformation.pas"/>
169-
<DCCReference Include="Units\Threads\Optix.Protocol.SessionHandler.pas"/>
170-
<DCCReference Include="Units\Threads\Optix.Protocol.Client.pas"/>
171-
<DCCReference Include="..\Core\OptixCore.WinApiEx.pas"/>
172-
<DCCReference Include="..\Core\System\OptixCore.System.Helper.pas"/>
173157
<DCCReference Include="..\Core\OptixCore.Types.pas"/>
158+
<DCCReference Include="..\Core\OptixCore.Helper.pas"/>
159+
<DCCReference Include="..\Core\OptixCore.WinApiEx.pas"/>
174160
<DCCReference Include="..\Core\Commands\OptixCore.LogNotifier.pas"/>
175161
<DCCReference Include="..\Core\OptixCore.Classes.pas"/>
162+
<DCCReference Include="..\Core\OptixCore.ClassesRegistry.pas"/>
163+
<DCCReference Include="..\Core\System\OptixCore.System.Helper.pas"/>
164+
<DCCReference Include="..\Core\System\OptixCore.System.InformationGathering.pas"/>
165+
<DCCReference Include="..\Core\System\OptixCore.System.Process.pas"/>
176166
<DCCReference Include="..\Core\System\OptixCore.System.FileSystem.pas"/>
167+
<DCCReference Include="..\Core\System\OptixCore.System.Registry.pas"/>
168+
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Packet.pas"/>
169+
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Client.Handler.pas"/>
177170
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Preflight.pas"/>
178171
<DCCReference Include="..\Core\Network\OptixCore.Protocol.Exceptions.pas"/>
179-
<DCCReference Include="Units\Threads\Optix.Protocol.Worker.FileTransfer.pas"/>
180172
<DCCReference Include="..\Core\Network\OptixCore.Protocol.FileTransfer.pas"/>
173+
<DCCReference Include="..\Core\Commands\OptixCore.SessionInformation.pas"/>
174+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.pas"/>
175+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Base.pas"/>
176+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.FileSystem.pas"/>
177+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Process.pas"/>
178+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Shell.pas"/>
179+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Registry.pas"/>
180+
<DCCReference Include="..\Core\Commands\OptixCore.Commands.ContentReader.pas"/>
181181
<DCCReference Include="..\Core\Tasks\OptixCore.Task.ProcessDump.pas"/>
182+
<DCCReference Include="..\Core\Tasks\OptixCore.Task.FileOperations.pas"/>
183+
<DCCReference Include="Units\Threads\Optix.Protocol.SessionHandler.pas"/>
184+
<DCCReference Include="Units\Threads\Optix.Protocol.Client.pas"/>
185+
<DCCReference Include="Units\Threads\Optix.Protocol.Worker.FileTransfer.pas"/>
182186
<DCCReference Include="Units\Actions\Optix.Actions.ProcessHandler.pas"/>
183187
<DCCReference Include="..\Server\Units\Optix.Helper.pas"/>
184188
<DCCReference Include="..\Server\Units\Optix.Constants.pas"/>
@@ -195,15 +199,6 @@
195199
<DCCReference Include="..\Server\Units\Forms\uFormDebugThreads.pas">
196200
<Form>FormDebugThreads</Form>
197201
</DCCReference>
198-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Base.pas"/>
199-
<DCCReference Include="..\Core\OptixCore.ClassesRegistry.pas"/>
200-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.FileSystem.pas"/>
201-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Process.pas"/>
202-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Shell.pas"/>
203-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.Registry.pas"/>
204-
<DCCReference Include="..\Core\System\OptixCore.System.Registry.pas"/>
205-
<DCCReference Include="..\Core\Commands\OptixCore.Commands.ContentReader.pas"/>
206-
<DCCReference Include="..\Core\OptixCore.Helper.pas"/>
207202
<DCCReference Include="Units\Forms\uFormWarning.pas">
208203
<Form>FormWarning</Form>
209204
</DCCReference>

Client GUI/Client_GUI.res

-556 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)