first working version
@@ -0,0 +1,19 @@ | ||
1 | +program dzStartViaRegistry; | |
2 | + | |
3 | +{$APPTYPE CONSOLE} | |
4 | + | |
5 | +uses | |
6 | + System.SysUtils, | |
7 | + u_dzDefaultMain in '..\libs\dzlib\src\u_dzDefaultMain.pas', | |
8 | + u_dzStartViaRegistryMain in 'u_dzStartViaRegistryMain.pas'; | |
9 | + | |
10 | +begin | |
11 | + try | |
12 | + MainClass := TStartViaRegistryMain; | |
13 | + System.ExitCode := Main; | |
14 | + except | |
15 | + on E: Exception do | |
16 | + Writeln(E.ClassName, ': ', E.Message); | |
17 | + end; | |
18 | +end. | |
19 | + |
@@ -0,0 +1,625 @@ | ||
1 | +<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | |
2 | + <PropertyGroup> | |
3 | + <ProjectGuid>{6F5A7B70-2349-43DD-A9A6-28A96686EEF3}</ProjectGuid> | |
4 | + <ProjectVersion>18.4</ProjectVersion> | |
5 | + <FrameworkType>VCL</FrameworkType> | |
6 | + <MainSource>dzStartViaRegistry.dpr</MainSource> | |
7 | + <Base>True</Base> | |
8 | + <Config Condition="'$(Config)'==''">Debug</Config> | |
9 | + <Platform Condition="'$(Platform)'==''">Win32</Platform> | |
10 | + <TargetedPlatforms>1</TargetedPlatforms> | |
11 | + <AppType>Console</AppType> | |
12 | + </PropertyGroup> | |
13 | + <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''"> | |
14 | + <Base>true</Base> | |
15 | + </PropertyGroup> | |
16 | + <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''"> | |
17 | + <Base_Win32>true</Base_Win32> | |
18 | + <CfgParent>Base</CfgParent> | |
19 | + <Base>true</Base> | |
20 | + </PropertyGroup> | |
21 | + <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''"> | |
22 | + <Base_Win64>true</Base_Win64> | |
23 | + <CfgParent>Base</CfgParent> | |
24 | + <Base>true</Base> | |
25 | + </PropertyGroup> | |
26 | + <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''"> | |
27 | + <Cfg_1>true</Cfg_1> | |
28 | + <CfgParent>Base</CfgParent> | |
29 | + <Base>true</Base> | |
30 | + </PropertyGroup> | |
31 | + <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''"> | |
32 | + <Cfg_1_Win32>true</Cfg_1_Win32> | |
33 | + <CfgParent>Cfg_1</CfgParent> | |
34 | + <Cfg_1>true</Cfg_1> | |
35 | + <Base>true</Base> | |
36 | + </PropertyGroup> | |
37 | + <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''"> | |
38 | + <Cfg_2>true</Cfg_2> | |
39 | + <CfgParent>Base</CfgParent> | |
40 | + <Base>true</Base> | |
41 | + </PropertyGroup> | |
42 | + <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''"> | |
43 | + <Cfg_2_Win32>true</Cfg_2_Win32> | |
44 | + <CfgParent>Cfg_2</CfgParent> | |
45 | + <Cfg_2>true</Cfg_2> | |
46 | + <Base>true</Base> | |
47 | + </PropertyGroup> | |
48 | + <PropertyGroup Condition="'$(Base)'!=''"> | |
49 | + <DCC_DcuOutput>..\dcu\$(Platform)\$(Config)</DCC_DcuOutput> | |
50 | + <DCC_ExeOutput>..</DCC_ExeOutput> | |
51 | + <DCC_E>false</DCC_E> | |
52 | + <DCC_N>false</DCC_N> | |
53 | + <DCC_S>false</DCC_S> | |
54 | + <DCC_F>false</DCC_F> | |
55 | + <DCC_K>false</DCC_K> | |
56 | + <DCC_UsePackage>RESTComponents;FireDAC;FireDACSqliteDriver;soaprtl;FireDACIBDriver;soapmidas;FireDACCommon;RESTBackendComponents;soapserver;CloudService;FireDACCommonDriver;inet;$(DCC_UsePackage)</DCC_UsePackage> | |
57 | + <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace> | |
58 | + <SanitizedProjectName>dzStartViaRegistry</SanitizedProjectName> | |
59 | + <VerInfo_Locale>1031</VerInfo_Locale> | |
60 | + <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> | |
61 | + <PreBuildEvent><![CDATA[call ..\buildtools\prebuild.cmd $(PROJECTPATH) | |
62 | +$(PreBuildEvent)]]></PreBuildEvent> | |
63 | + <PostBuildEvent><![CDATA[call ..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME) | |
64 | +$(PostBuildEvent)]]></PostBuildEvent> | |
65 | + <DCC_UnitSearchPath>..\libs\dzlib\src;..\libs\dzlib\templates;..\libs\dzlib\jedi_inc;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> | |
66 | + <DCC_Define>NO_TRANSLATION;NO_TRANSLATION_HINT;$(DCC_Define)</DCC_Define> | |
67 | + </PropertyGroup> | |
68 | + <PropertyGroup Condition="'$(Base_Win32)'!=''"> | |
69 | + <DCC_UsePackage>DBXSqliteDriver;bindcompdbx;IndyIPCommon;DBXInterBaseDriver;vcl;IndyIPServer;vclactnband;vclFireDAC;IndySystem;tethering;svnui;dsnapcon;FireDACADSDriver;FireDACMSAccDriver;fmxFireDAC;vclimg;vcltouch;vcldb;bindcompfmx;svn;Intraweb;FireDACPgDriver;ibmonitor;inetdb;DbxCommonDriver;ibxpress;fmx;fmxdae;xmlrtl;ibxbindings;fmxobj;vclwinx;vclib;rtl;DbxClientDriver;CustomIPTransport;vcldsnap;dbexpress;IndyCore;vclx;bindcomp;appanalytics;dsnap;IndyIPClient;bindcompvcl;VCLRESTComponents;dbxcds;VclSmp;adortl;vclie;bindengine;DBXMySQLDriver;dsnapxml;FireDACMySQLDriver;dbrtl;inetdbxpress;IndyProtocols;FireDACCommonODBC;fmxase;$(DCC_UsePackage)</DCC_UsePackage> | |
70 | + <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace> | |
71 | + <BT_BuildType>Debug</BT_BuildType> | |
72 | + <VerInfo_Locale>1033</VerInfo_Locale> | |
73 | + <DCC_ConsoleTarget>true</DCC_ConsoleTarget> | |
74 | + <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44> | |
75 | + <Manifest_File>(None)</Manifest_File> | |
76 | + <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150> | |
77 | + <Debugger_RunParams>"HKLM\Software\Scooter Software\Beyond Compare" ExePath "D:\Source\_OSDN\dzStartViaRegistry\_AutoBuildCheck.cmd" "C:\Program Files (x86)\Raabe Software\MMX\13\readme.txt"</Debugger_RunParams> | |
78 | + <DCC_SYMBOL_PLATFORM>false</DCC_SYMBOL_PLATFORM> | |
79 | + <DCC_UNIT_PLATFORM>false</DCC_UNIT_PLATFORM> | |
80 | + <DCC_DUPLICATE_CTOR_DTOR>false</DCC_DUPLICATE_CTOR_DTOR> | |
81 | + </PropertyGroup> | |
82 | + <PropertyGroup Condition="'$(Base_Win64)'!=''"> | |
83 | + <DCC_UsePackage>DBXSqliteDriver;bindcompdbx;IndyIPCommon;DBXInterBaseDriver;vcl;IndyIPServer;vclactnband;vclFireDAC;IndySystem;tethering;dsnapcon;FireDACADSDriver;FireDACMSAccDriver;fmxFireDAC;vclimg;vcltouch;vcldb;bindcompfmx;Intraweb;FireDACPgDriver;ibmonitor;inetdb;DbxCommonDriver;ibxpress;fmx;fmxdae;xmlrtl;ibxbindings;fmxobj;vclwinx;vclib;rtl;DbxClientDriver;CustomIPTransport;vcldsnap;dbexpress;IndyCore;vclx;bindcomp;appanalytics;dsnap;IndyIPClient;bindcompvcl;VCLRESTComponents;dbxcds;VclSmp;adortl;vclie;bindengine;DBXMySQLDriver;dsnapxml;FireDACMySQLDriver;dbrtl;inetdbxpress;IndyProtocols;FireDACCommonODBC;fmxase;$(DCC_UsePackage)</DCC_UsePackage> | |
84 | + <DCC_ConsoleTarget>true</DCC_ConsoleTarget> | |
85 | + <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44> | |
86 | + <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150> | |
87 | + </PropertyGroup> | |
88 | + <PropertyGroup Condition="'$(Cfg_1)'!=''"> | |
89 | + <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define> | |
90 | + <DCC_DebugDCUs>true</DCC_DebugDCUs> | |
91 | + <DCC_Optimize>false</DCC_Optimize> | |
92 | + <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames> | |
93 | + <DCC_DebugInfoInExe>true</DCC_DebugInfoInExe> | |
94 | + <DCC_RemoteDebug>true</DCC_RemoteDebug> | |
95 | + </PropertyGroup> | |
96 | + <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> | |
97 | + <DCC_RemoteDebug>false</DCC_RemoteDebug> | |
98 | + <VerInfo_Locale>1033</VerInfo_Locale> | |
99 | + </PropertyGroup> | |
100 | + <PropertyGroup Condition="'$(Cfg_2)'!=''"> | |
101 | + <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols> | |
102 | + <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define> | |
103 | + <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> | |
104 | + <DCC_DebugInformation>0</DCC_DebugInformation> | |
105 | + </PropertyGroup> | |
106 | + <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> | |
107 | + <VerInfo_Locale>1033</VerInfo_Locale> | |
108 | + </PropertyGroup> | |
109 | + <ItemGroup> | |
110 | + <DelphiCompile Include="$(MainSource)"> | |
111 | + <MainSource>MainSource</MainSource> | |
112 | + </DelphiCompile> | |
113 | + <DCCReference Include="..\libs\dzlib\src\u_dzDefaultMain.pas"/> | |
114 | + <DCCReference Include="u_dzStartViaRegistryMain.pas"/> | |
115 | + <BuildConfiguration Include="Release"> | |
116 | + <Key>Cfg_2</Key> | |
117 | + <CfgParent>Base</CfgParent> | |
118 | + </BuildConfiguration> | |
119 | + <BuildConfiguration Include="Base"> | |
120 | + <Key>Base</Key> | |
121 | + </BuildConfiguration> | |
122 | + <BuildConfiguration Include="Debug"> | |
123 | + <Key>Cfg_1</Key> | |
124 | + <CfgParent>Base</CfgParent> | |
125 | + </BuildConfiguration> | |
126 | + </ItemGroup> | |
127 | + <ProjectExtensions> | |
128 | + <Borland.Personality>Delphi.Personality.12</Borland.Personality> | |
129 | + <Borland.ProjectType>Application</Borland.ProjectType> | |
130 | + <BorlandProject> | |
131 | + <Delphi.Personality> | |
132 | + <Source> | |
133 | + <Source Name="MainSource">dzStartViaRegistry.dpr</Source> | |
134 | + </Source> | |
135 | + <Excluded_Packages> | |
136 | + <Excluded_Packages Name="$(BDSBIN)\dcloffice2k250.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages> | |
137 | + <Excluded_Packages Name="$(BDSBIN)\dclofficexp250.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages> | |
138 | + </Excluded_Packages> | |
139 | + </Delphi.Personality> | |
140 | + <Deployment Version="3"> | |
141 | + <DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule"> | |
142 | + <Platform Name="OSX32"> | |
143 | + <Overwrite>true</Overwrite> | |
144 | + </Platform> | |
145 | + </DeployFile> | |
146 | + <DeployFile LocalName="$(BDS)\Redist\iossimulator\libcgunwind.1.0.dylib" Class="DependencyModule"> | |
147 | + <Platform Name="iOSSimulator"> | |
148 | + <Overwrite>true</Overwrite> | |
149 | + </Platform> | |
150 | + </DeployFile> | |
151 | + <DeployFile LocalName="$(BDS)\Redist\iossimulator\libPCRE.dylib" Class="DependencyModule"> | |
152 | + <Platform Name="iOSSimulator"> | |
153 | + <Overwrite>true</Overwrite> | |
154 | + </Platform> | |
155 | + </DeployFile> | |
156 | + <DeployFile LocalName="$(BDS)\Redist\osx32\libcgsqlite3.dylib" Class="DependencyModule"> | |
157 | + <Platform Name="OSX32"> | |
158 | + <Overwrite>true</Overwrite> | |
159 | + </Platform> | |
160 | + </DeployFile> | |
161 | + <DeployFile LocalName="..\dzStartViaRegistry.exe" Configuration="Debug" Class="ProjectOutput"> | |
162 | + <Platform Name="Win32"> | |
163 | + <RemoteName>dzStartViaRegistry.exe</RemoteName> | |
164 | + <Overwrite>true</Overwrite> | |
165 | + </Platform> | |
166 | + </DeployFile> | |
167 | + <DeployClass Name="AdditionalDebugSymbols"> | |
168 | + <Platform Name="iOSSimulator"> | |
169 | + <Operation>1</Operation> | |
170 | + </Platform> | |
171 | + <Platform Name="OSX32"> | |
172 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
173 | + <Operation>1</Operation> | |
174 | + </Platform> | |
175 | + <Platform Name="Win32"> | |
176 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
177 | + <Operation>0</Operation> | |
178 | + </Platform> | |
179 | + </DeployClass> | |
180 | + <DeployClass Name="AndroidClassesDexFile"> | |
181 | + <Platform Name="Android"> | |
182 | + <RemoteDir>classes</RemoteDir> | |
183 | + <Operation>1</Operation> | |
184 | + </Platform> | |
185 | + </DeployClass> | |
186 | + <DeployClass Name="AndroidGDBServer"> | |
187 | + <Platform Name="Android"> | |
188 | + <RemoteDir>library\lib\armeabi-v7a</RemoteDir> | |
189 | + <Operation>1</Operation> | |
190 | + </Platform> | |
191 | + </DeployClass> | |
192 | + <DeployClass Name="AndroidLibnativeArmeabiFile"> | |
193 | + <Platform Name="Android"> | |
194 | + <RemoteDir>library\lib\armeabi</RemoteDir> | |
195 | + <Operation>1</Operation> | |
196 | + </Platform> | |
197 | + </DeployClass> | |
198 | + <DeployClass Name="AndroidLibnativeMipsFile"> | |
199 | + <Platform Name="Android"> | |
200 | + <RemoteDir>library\lib\mips</RemoteDir> | |
201 | + <Operation>1</Operation> | |
202 | + </Platform> | |
203 | + </DeployClass> | |
204 | + <DeployClass Name="AndroidServiceOutput"> | |
205 | + <Platform Name="Android"> | |
206 | + <RemoteDir>library\lib\armeabi-v7a</RemoteDir> | |
207 | + <Operation>1</Operation> | |
208 | + </Platform> | |
209 | + </DeployClass> | |
210 | + <DeployClass Name="AndroidSplashImageDef"> | |
211 | + <Platform Name="Android"> | |
212 | + <RemoteDir>res\drawable</RemoteDir> | |
213 | + <Operation>1</Operation> | |
214 | + </Platform> | |
215 | + </DeployClass> | |
216 | + <DeployClass Name="AndroidSplashStyles"> | |
217 | + <Platform Name="Android"> | |
218 | + <RemoteDir>res\values</RemoteDir> | |
219 | + <Operation>1</Operation> | |
220 | + </Platform> | |
221 | + </DeployClass> | |
222 | + <DeployClass Name="Android_DefaultAppIcon"> | |
223 | + <Platform Name="Android"> | |
224 | + <RemoteDir>res\drawable</RemoteDir> | |
225 | + <Operation>1</Operation> | |
226 | + </Platform> | |
227 | + </DeployClass> | |
228 | + <DeployClass Name="Android_LauncherIcon144"> | |
229 | + <Platform Name="Android"> | |
230 | + <RemoteDir>res\drawable-xxhdpi</RemoteDir> | |
231 | + <Operation>1</Operation> | |
232 | + </Platform> | |
233 | + </DeployClass> | |
234 | + <DeployClass Name="Android_LauncherIcon36"> | |
235 | + <Platform Name="Android"> | |
236 | + <RemoteDir>res\drawable-ldpi</RemoteDir> | |
237 | + <Operation>1</Operation> | |
238 | + </Platform> | |
239 | + </DeployClass> | |
240 | + <DeployClass Name="Android_LauncherIcon48"> | |
241 | + <Platform Name="Android"> | |
242 | + <RemoteDir>res\drawable-mdpi</RemoteDir> | |
243 | + <Operation>1</Operation> | |
244 | + </Platform> | |
245 | + </DeployClass> | |
246 | + <DeployClass Name="Android_LauncherIcon72"> | |
247 | + <Platform Name="Android"> | |
248 | + <RemoteDir>res\drawable-hdpi</RemoteDir> | |
249 | + <Operation>1</Operation> | |
250 | + </Platform> | |
251 | + </DeployClass> | |
252 | + <DeployClass Name="Android_LauncherIcon96"> | |
253 | + <Platform Name="Android"> | |
254 | + <RemoteDir>res\drawable-xhdpi</RemoteDir> | |
255 | + <Operation>1</Operation> | |
256 | + </Platform> | |
257 | + </DeployClass> | |
258 | + <DeployClass Name="Android_SplashImage426"> | |
259 | + <Platform Name="Android"> | |
260 | + <RemoteDir>res\drawable-small</RemoteDir> | |
261 | + <Operation>1</Operation> | |
262 | + </Platform> | |
263 | + </DeployClass> | |
264 | + <DeployClass Name="Android_SplashImage470"> | |
265 | + <Platform Name="Android"> | |
266 | + <RemoteDir>res\drawable-normal</RemoteDir> | |
267 | + <Operation>1</Operation> | |
268 | + </Platform> | |
269 | + </DeployClass> | |
270 | + <DeployClass Name="Android_SplashImage640"> | |
271 | + <Platform Name="Android"> | |
272 | + <RemoteDir>res\drawable-large</RemoteDir> | |
273 | + <Operation>1</Operation> | |
274 | + </Platform> | |
275 | + </DeployClass> | |
276 | + <DeployClass Name="Android_SplashImage960"> | |
277 | + <Platform Name="Android"> | |
278 | + <RemoteDir>res\drawable-xlarge</RemoteDir> | |
279 | + <Operation>1</Operation> | |
280 | + </Platform> | |
281 | + </DeployClass> | |
282 | + <DeployClass Name="DebugSymbols"> | |
283 | + <Platform Name="iOSSimulator"> | |
284 | + <Operation>1</Operation> | |
285 | + </Platform> | |
286 | + <Platform Name="OSX32"> | |
287 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
288 | + <Operation>1</Operation> | |
289 | + </Platform> | |
290 | + <Platform Name="Win32"> | |
291 | + <Operation>0</Operation> | |
292 | + </Platform> | |
293 | + </DeployClass> | |
294 | + <DeployClass Name="DependencyFramework"> | |
295 | + <Platform Name="OSX32"> | |
296 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
297 | + <Operation>1</Operation> | |
298 | + <Extensions>.framework</Extensions> | |
299 | + </Platform> | |
300 | + <Platform Name="Win32"> | |
301 | + <Operation>0</Operation> | |
302 | + </Platform> | |
303 | + </DeployClass> | |
304 | + <DeployClass Name="DependencyModule"> | |
305 | + <Platform Name="iOSDevice32"> | |
306 | + <Operation>1</Operation> | |
307 | + <Extensions>.dylib</Extensions> | |
308 | + </Platform> | |
309 | + <Platform Name="iOSDevice64"> | |
310 | + <Operation>1</Operation> | |
311 | + <Extensions>.dylib</Extensions> | |
312 | + </Platform> | |
313 | + <Platform Name="iOSSimulator"> | |
314 | + <Operation>1</Operation> | |
315 | + <Extensions>.dylib</Extensions> | |
316 | + </Platform> | |
317 | + <Platform Name="OSX32"> | |
318 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
319 | + <Operation>1</Operation> | |
320 | + <Extensions>.dylib</Extensions> | |
321 | + </Platform> | |
322 | + <Platform Name="Win32"> | |
323 | + <Operation>0</Operation> | |
324 | + <Extensions>.dll;.bpl</Extensions> | |
325 | + </Platform> | |
326 | + </DeployClass> | |
327 | + <DeployClass Required="true" Name="DependencyPackage"> | |
328 | + <Platform Name="iOSDevice32"> | |
329 | + <Operation>1</Operation> | |
330 | + <Extensions>.dylib</Extensions> | |
331 | + </Platform> | |
332 | + <Platform Name="iOSDevice64"> | |
333 | + <Operation>1</Operation> | |
334 | + <Extensions>.dylib</Extensions> | |
335 | + </Platform> | |
336 | + <Platform Name="iOSSimulator"> | |
337 | + <Operation>1</Operation> | |
338 | + <Extensions>.dylib</Extensions> | |
339 | + </Platform> | |
340 | + <Platform Name="OSX32"> | |
341 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
342 | + <Operation>1</Operation> | |
343 | + <Extensions>.dylib</Extensions> | |
344 | + </Platform> | |
345 | + <Platform Name="Win32"> | |
346 | + <Operation>0</Operation> | |
347 | + <Extensions>.bpl</Extensions> | |
348 | + </Platform> | |
349 | + </DeployClass> | |
350 | + <DeployClass Name="File"> | |
351 | + <Platform Name="Android"> | |
352 | + <Operation>0</Operation> | |
353 | + </Platform> | |
354 | + <Platform Name="iOSDevice32"> | |
355 | + <Operation>0</Operation> | |
356 | + </Platform> | |
357 | + <Platform Name="iOSDevice64"> | |
358 | + <Operation>0</Operation> | |
359 | + </Platform> | |
360 | + <Platform Name="iOSSimulator"> | |
361 | + <Operation>0</Operation> | |
362 | + </Platform> | |
363 | + <Platform Name="OSX32"> | |
364 | + <RemoteDir>Contents\Resources\StartUp\</RemoteDir> | |
365 | + <Operation>0</Operation> | |
366 | + </Platform> | |
367 | + <Platform Name="Win32"> | |
368 | + <Operation>0</Operation> | |
369 | + </Platform> | |
370 | + </DeployClass> | |
371 | + <DeployClass Name="iPad_Launch1024"> | |
372 | + <Platform Name="iOSDevice32"> | |
373 | + <Operation>1</Operation> | |
374 | + </Platform> | |
375 | + <Platform Name="iOSDevice64"> | |
376 | + <Operation>1</Operation> | |
377 | + </Platform> | |
378 | + <Platform Name="iOSSimulator"> | |
379 | + <Operation>1</Operation> | |
380 | + </Platform> | |
381 | + </DeployClass> | |
382 | + <DeployClass Name="iPad_Launch1536"> | |
383 | + <Platform Name="iOSDevice32"> | |
384 | + <Operation>1</Operation> | |
385 | + </Platform> | |
386 | + <Platform Name="iOSDevice64"> | |
387 | + <Operation>1</Operation> | |
388 | + </Platform> | |
389 | + <Platform Name="iOSSimulator"> | |
390 | + <Operation>1</Operation> | |
391 | + </Platform> | |
392 | + </DeployClass> | |
393 | + <DeployClass Name="iPad_Launch2048"> | |
394 | + <Platform Name="iOSDevice32"> | |
395 | + <Operation>1</Operation> | |
396 | + </Platform> | |
397 | + <Platform Name="iOSDevice64"> | |
398 | + <Operation>1</Operation> | |
399 | + </Platform> | |
400 | + <Platform Name="iOSSimulator"> | |
401 | + <Operation>1</Operation> | |
402 | + </Platform> | |
403 | + </DeployClass> | |
404 | + <DeployClass Name="iPad_Launch768"> | |
405 | + <Platform Name="iOSDevice32"> | |
406 | + <Operation>1</Operation> | |
407 | + </Platform> | |
408 | + <Platform Name="iOSDevice64"> | |
409 | + <Operation>1</Operation> | |
410 | + </Platform> | |
411 | + <Platform Name="iOSSimulator"> | |
412 | + <Operation>1</Operation> | |
413 | + </Platform> | |
414 | + </DeployClass> | |
415 | + <DeployClass Name="iPhone_Launch320"> | |
416 | + <Platform Name="iOSDevice32"> | |
417 | + <Operation>1</Operation> | |
418 | + </Platform> | |
419 | + <Platform Name="iOSDevice64"> | |
420 | + <Operation>1</Operation> | |
421 | + </Platform> | |
422 | + <Platform Name="iOSSimulator"> | |
423 | + <Operation>1</Operation> | |
424 | + </Platform> | |
425 | + </DeployClass> | |
426 | + <DeployClass Name="iPhone_Launch640"> | |
427 | + <Platform Name="iOSDevice32"> | |
428 | + <Operation>1</Operation> | |
429 | + </Platform> | |
430 | + <Platform Name="iOSDevice64"> | |
431 | + <Operation>1</Operation> | |
432 | + </Platform> | |
433 | + <Platform Name="iOSSimulator"> | |
434 | + <Operation>1</Operation> | |
435 | + </Platform> | |
436 | + </DeployClass> | |
437 | + <DeployClass Name="iPhone_Launch640x1136"> | |
438 | + <Platform Name="iOSDevice32"> | |
439 | + <Operation>1</Operation> | |
440 | + </Platform> | |
441 | + <Platform Name="iOSDevice64"> | |
442 | + <Operation>1</Operation> | |
443 | + </Platform> | |
444 | + <Platform Name="iOSSimulator"> | |
445 | + <Operation>1</Operation> | |
446 | + </Platform> | |
447 | + </DeployClass> | |
448 | + <DeployClass Name="ProjectAndroidManifest"> | |
449 | + <Platform Name="Android"> | |
450 | + <Operation>1</Operation> | |
451 | + </Platform> | |
452 | + </DeployClass> | |
453 | + <DeployClass Name="ProjectiOSDeviceDebug"> | |
454 | + <Platform Name="iOSDevice32"> | |
455 | + <RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir> | |
456 | + <Operation>1</Operation> | |
457 | + </Platform> | |
458 | + <Platform Name="iOSDevice64"> | |
459 | + <RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir> | |
460 | + <Operation>1</Operation> | |
461 | + </Platform> | |
462 | + </DeployClass> | |
463 | + <DeployClass Name="ProjectiOSDeviceResourceRules"> | |
464 | + <Platform Name="iOSDevice32"> | |
465 | + <Operation>1</Operation> | |
466 | + </Platform> | |
467 | + <Platform Name="iOSDevice64"> | |
468 | + <Operation>1</Operation> | |
469 | + </Platform> | |
470 | + </DeployClass> | |
471 | + <DeployClass Name="ProjectiOSEntitlements"> | |
472 | + <Platform Name="iOSDevice32"> | |
473 | + <RemoteDir>..\</RemoteDir> | |
474 | + <Operation>1</Operation> | |
475 | + </Platform> | |
476 | + <Platform Name="iOSDevice64"> | |
477 | + <RemoteDir>..\</RemoteDir> | |
478 | + <Operation>1</Operation> | |
479 | + </Platform> | |
480 | + </DeployClass> | |
481 | + <DeployClass Name="ProjectiOSInfoPList"> | |
482 | + <Platform Name="iOSDevice32"> | |
483 | + <Operation>1</Operation> | |
484 | + </Platform> | |
485 | + <Platform Name="iOSDevice64"> | |
486 | + <Operation>1</Operation> | |
487 | + </Platform> | |
488 | + <Platform Name="iOSSimulator"> | |
489 | + <Operation>1</Operation> | |
490 | + </Platform> | |
491 | + </DeployClass> | |
492 | + <DeployClass Name="ProjectiOSResource"> | |
493 | + <Platform Name="iOSDevice32"> | |
494 | + <Operation>1</Operation> | |
495 | + </Platform> | |
496 | + <Platform Name="iOSDevice64"> | |
497 | + <Operation>1</Operation> | |
498 | + </Platform> | |
499 | + <Platform Name="iOSSimulator"> | |
500 | + <Operation>1</Operation> | |
501 | + </Platform> | |
502 | + </DeployClass> | |
503 | + <DeployClass Name="ProjectOSXEntitlements"> | |
504 | + <Platform Name="OSX32"> | |
505 | + <RemoteDir>..\</RemoteDir> | |
506 | + <Operation>1</Operation> | |
507 | + </Platform> | |
508 | + </DeployClass> | |
509 | + <DeployClass Name="ProjectOSXInfoPList"> | |
510 | + <Platform Name="OSX32"> | |
511 | + <RemoteDir>Contents</RemoteDir> | |
512 | + <Operation>1</Operation> | |
513 | + </Platform> | |
514 | + </DeployClass> | |
515 | + <DeployClass Name="ProjectOSXResource"> | |
516 | + <Platform Name="OSX32"> | |
517 | + <RemoteDir>Contents\Resources</RemoteDir> | |
518 | + <Operation>1</Operation> | |
519 | + </Platform> | |
520 | + </DeployClass> | |
521 | + <DeployClass Required="true" Name="ProjectOutput"> | |
522 | + <Platform Name="Android"> | |
523 | + <RemoteDir>library\lib\armeabi-v7a</RemoteDir> | |
524 | + <Operation>1</Operation> | |
525 | + </Platform> | |
526 | + <Platform Name="iOSDevice32"> | |
527 | + <Operation>1</Operation> | |
528 | + </Platform> | |
529 | + <Platform Name="iOSDevice64"> | |
530 | + <Operation>1</Operation> | |
531 | + </Platform> | |
532 | + <Platform Name="iOSSimulator"> | |
533 | + <Operation>1</Operation> | |
534 | + </Platform> | |
535 | + <Platform Name="Linux64"> | |
536 | + <Operation>1</Operation> | |
537 | + </Platform> | |
538 | + <Platform Name="OSX32"> | |
539 | + <RemoteDir>Contents\MacOS</RemoteDir> | |
540 | + <Operation>1</Operation> | |
541 | + </Platform> | |
542 | + <Platform Name="Win32"> | |
543 | + <Operation>0</Operation> | |
544 | + </Platform> | |
545 | + </DeployClass> | |
546 | + <DeployClass Name="ProjectUWPManifest"> | |
547 | + <Platform Name="Win32"> | |
548 | + <Operation>1</Operation> | |
549 | + </Platform> | |
550 | + <Platform Name="Win64"> | |
551 | + <Operation>1</Operation> | |
552 | + </Platform> | |
553 | + </DeployClass> | |
554 | + <DeployClass Name="UWP_DelphiLogo150"> | |
555 | + <Platform Name="Win32"> | |
556 | + <RemoteDir>Assets</RemoteDir> | |
557 | + <Operation>1</Operation> | |
558 | + </Platform> | |
559 | + <Platform Name="Win64"> | |
560 | + <RemoteDir>Assets</RemoteDir> | |
561 | + <Operation>1</Operation> | |
562 | + </Platform> | |
563 | + </DeployClass> | |
564 | + <DeployClass Name="UWP_DelphiLogo44"> | |
565 | + <Platform Name="Win32"> | |
566 | + <RemoteDir>Assets</RemoteDir> | |
567 | + <Operation>1</Operation> | |
568 | + </Platform> | |
569 | + <Platform Name="Win64"> | |
570 | + <RemoteDir>Assets</RemoteDir> | |
571 | + <Operation>1</Operation> | |
572 | + </Platform> | |
573 | + </DeployClass> | |
574 | + <ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/> | |
575 | + <ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/> | |
576 | + <ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/> | |
577 | + <ProjectRoot Platform="Linux64" Name="$(PROJECTNAME)"/> | |
578 | + <ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/> | |
579 | + <ProjectRoot Platform="OSX32" Name="$(PROJECTNAME).app"/> | |
580 | + <ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/> | |
581 | + <ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/> | |
582 | + </Deployment> | |
583 | + <Platforms> | |
584 | + <Platform value="Win32">True</Platform> | |
585 | + <Platform value="Win64">False</Platform> | |
586 | + </Platforms> | |
587 | + </BorlandProject> | |
588 | + <ProjectFileVersion>12</ProjectFileVersion> | |
589 | + </ProjectExtensions> | |
590 | + <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/> | |
591 | + <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/> | |
592 | + <Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/> | |
593 | + <PropertyGroup Condition="'$(Config)'=='Debug' And '$(Platform)'=='Win32'"> | |
594 | + <PreBuildEvent>call ..\buildtools\prebuild.cmd $(PROJECTPATH)</PreBuildEvent> | |
595 | + <PreBuildEventIgnoreExitCode>False</PreBuildEventIgnoreExitCode> | |
596 | + <PreLinkEvent/> | |
597 | + <PreLinkEventIgnoreExitCode>False</PreLinkEventIgnoreExitCode> | |
598 | + <PostBuildEvent>call ..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)</PostBuildEvent> | |
599 | + <PostBuildEventIgnoreExitCode>False</PostBuildEventIgnoreExitCode> | |
600 | + </PropertyGroup> | |
601 | + <PropertyGroup Condition="'$(Config)'=='Debug' And '$(Platform)'=='Win64'"> | |
602 | + <PreBuildEvent>call ..\buildtools\prebuild.cmd $(PROJECTPATH)</PreBuildEvent> | |
603 | + <PreBuildEventIgnoreExitCode>False</PreBuildEventIgnoreExitCode> | |
604 | + <PreLinkEvent/> | |
605 | + <PreLinkEventIgnoreExitCode>False</PreLinkEventIgnoreExitCode> | |
606 | + <PostBuildEvent>call ..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)</PostBuildEvent> | |
607 | + <PostBuildEventIgnoreExitCode>False</PostBuildEventIgnoreExitCode> | |
608 | + </PropertyGroup> | |
609 | + <PropertyGroup Condition="'$(Config)'=='Release' And '$(Platform)'=='Win32'"> | |
610 | + <PreBuildEvent>call ..\buildtools\prebuild.cmd $(PROJECTPATH)</PreBuildEvent> | |
611 | + <PreBuildEventIgnoreExitCode>False</PreBuildEventIgnoreExitCode> | |
612 | + <PreLinkEvent/> | |
613 | + <PreLinkEventIgnoreExitCode>False</PreLinkEventIgnoreExitCode> | |
614 | + <PostBuildEvent>call ..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)</PostBuildEvent> | |
615 | + <PostBuildEventIgnoreExitCode>False</PostBuildEventIgnoreExitCode> | |
616 | + </PropertyGroup> | |
617 | + <PropertyGroup Condition="'$(Config)'=='Release' And '$(Platform)'=='Win64'"> | |
618 | + <PreBuildEvent>call ..\buildtools\prebuild.cmd $(PROJECTPATH)</PreBuildEvent> | |
619 | + <PreBuildEventIgnoreExitCode>False</PreBuildEventIgnoreExitCode> | |
620 | + <PreLinkEvent/> | |
621 | + <PreLinkEventIgnoreExitCode>False</PreLinkEventIgnoreExitCode> | |
622 | + <PostBuildEvent>call ..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)</PostBuildEvent> | |
623 | + <PostBuildEventIgnoreExitCode>False</PostBuildEventIgnoreExitCode> | |
624 | + </PropertyGroup> | |
625 | +</Project> |
@@ -0,0 +1,53 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |
2 | +<!-- | |
3 | + This manifest tells Windows Vista to Windows 10 not to virtualize any file | |
4 | + or registry access. Also, it disables themes support. | |
5 | + --> | |
6 | + <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> | |
7 | + <assemblyIdentity version="1.0.0.0" | |
8 | + processorArchitecture="*" | |
9 | + name="template from dzlib build tools" | |
10 | + type="win32"/> | |
11 | +<!-- We do not want themes support | |
12 | + <dependency> | |
13 | + <dependentassembly> | |
14 | + <assemblyidentity type="win32" | |
15 | + name="Microsoft.Windows.Common-Controls" | |
16 | + version="6.0.0.0" | |
17 | + publickeytoken="6595b64144ccf1df" | |
18 | + language="*" processorarchitecture="*"> | |
19 | + </assemblyidentity> | |
20 | + </dependentassembly> | |
21 | + <dependency> | |
22 | + --> | |
23 | + <description>This application was built using buildtools from dzlib</description> | |
24 | + <!-- COMPATIBILITY SECTION SPECIFIES IF APP IS COMPLIANT | |
25 | + DISABLES PCA IF SPECIFIED --> | |
26 | + <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> | |
27 | + <application> | |
28 | + <!-- We support Windows Vista --> | |
29 | + <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/> | |
30 | + <!-- We support Windows 7 --> | |
31 | + <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> | |
32 | + <!-- We support Windows 8 --> | |
33 | + <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/> | |
34 | + <!-- We support Windows 8.1 --> | |
35 | + <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/> | |
36 | + <!-- We support Windows 10 --> | |
37 | + <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/> | |
38 | + </application> | |
39 | + </compatibility> | |
40 | + | |
41 | + <!-- TRUSTINFO SECTION SPECIFIES REQUESTED PERMISSIONS AND | |
42 | + UIPI DISABLEMENT (SPECIAL CONDITIONS APPLY TO UIPI DISABLEMENT)--> | |
43 | + <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> | |
44 | + <security> | |
45 | + <requestedPrivileges> | |
46 | + <requestedExecutionLevel | |
47 | + level="asInvoker" | |
48 | + uiAccess="false" | |
49 | + /> | |
50 | + </requestedPrivileges> | |
51 | + </security> | |
52 | + </trustInfo> | |
53 | +</assembly> | |
\ No newline at end of file |
@@ -0,0 +1,21 @@ | ||
1 | +[Version Info] | |
2 | +AutoIncBuild=0 | |
3 | +Build=32 | |
4 | +MajorVer=1 | |
5 | +MinorVer=0 | |
6 | +Release=0 | |
7 | +Revision=0 | |
8 | + | |
9 | +[Version Info Keys] | |
10 | +FileVersion=1.0.0.32 | |
11 | +ProductVersion={today} | |
12 | +FileDescription=dzStartViaRegistry | |
13 | +OriginalFilename=dzStartViaRegistry.exe | |
14 | +Comments= | |
15 | +CompanyName=dummzeuch.de | |
16 | +InternalName=dzStartViaRegistry | |
17 | +LegalCopyright=Thomas Mueller, 2019-{ThisYear} | |
18 | +LegalTrademarks=T. Mueller | |
19 | +ProductName=dzStartViaRegistry | |
20 | +BuildDateTime={today} | |
21 | + |
@@ -0,0 +1,101 @@ | ||
1 | +unit u_dzStartViaRegistryMain; | |
2 | + | |
3 | +interface | |
4 | + | |
5 | +uses | |
6 | + Winapi.Windows, | |
7 | + System.SysUtils, | |
8 | + System.Classes, | |
9 | + u_dzDefaultMain, | |
10 | + u_dzTranslator; | |
11 | + | |
12 | +type | |
13 | + TStartViaRegistryMain = class(TDefaultMain) | |
14 | + protected | |
15 | + procedure InitCmdLineParser; override; | |
16 | + function doExecute: Integer; override; | |
17 | + end; | |
18 | + | |
19 | +implementation | |
20 | + | |
21 | +uses | |
22 | + System.Win.Registry, | |
23 | + System.StrUtils, | |
24 | + u_dzFileUtils, | |
25 | + u_dzExecutor; | |
26 | + | |
27 | +{ TStartViaRegistryMain } | |
28 | + | |
29 | +function TStartViaRegistryMain.doExecute: Integer; | |
30 | +var | |
31 | + RegKey: string; | |
32 | + RegValue: string; | |
33 | + Reg: TRegistry; | |
34 | + RootKey: hkey; | |
35 | + ExeName: string; | |
36 | + MoreParams: TStringList; | |
37 | + i: Integer; | |
38 | + s: string; | |
39 | +begin | |
40 | + RegKey := AnsiDequotedStr(FGetOpt.GetParam('RegKey'), '"'); | |
41 | + WriteLn('RegKey: ', RegKey); | |
42 | + RegValue := AnsiDequotedStr(FGetOpt.GetParam('RegValue'), '"'); | |
43 | + WriteLn('RegValue: ', RegValue); | |
44 | + | |
45 | + MoreParams := TStringList.Create; | |
46 | + try | |
47 | + FGetOpt.ParamPassed('MoreParams', MoreParams); | |
48 | + for i := 0 to MoreParams.Count - 1 do begin | |
49 | + s := MoreParams[i]; | |
50 | + WriteLn('MoreParams: ', s); | |
51 | + end; | |
52 | + | |
53 | + if StartsText('HKLM\', RegKey) then begin | |
54 | + RootKey := HKEY_LOCAL_MACHINE; | |
55 | + RegKey := Copy(RegKey, 6); | |
56 | + WriteLn('RootKey: HKEY_LOCAL_MACHINE'); | |
57 | + end else if StartsText('HKCU\', RegKey) then begin | |
58 | + RootKey := HKEY_CURRENT_USER; | |
59 | + RegKey := Copy(RegKey, 6); | |
60 | + WriteLn('RootKey: HKEY_CURRENT_USER'); | |
61 | + end else | |
62 | + raise Exception.Create(_('Root key must be one of HKLM or HKCU.')); | |
63 | + Reg := TRegistry.Create; | |
64 | + try | |
65 | + Reg.RootKey := RootKey; | |
66 | + if not Reg.OpenKeyReadOnly(RegKey) then | |
67 | + raise Exception.CreateFmt(_('Canot open registry key "%s"'), [RegKey]); | |
68 | + try | |
69 | + if not Reg.ValueExists(RegValue) then | |
70 | + raise Exception.CreateFmt(_('Value "%s" does not exist in the given registry key'), [RegValue]); | |
71 | + if not (Reg.GetDataType(RegValue) in [rdString, rdExpandString]) then | |
72 | + raise Exception.CreateFmt(_('Value "%s" is not a string'), [RegValue]); | |
73 | + ExeName := Reg.ReadString(RegValue); | |
74 | + finally | |
75 | + Reg.CloseKey; | |
76 | + end; | |
77 | + finally | |
78 | + FreeAndNil(Reg); | |
79 | + end; | |
80 | + WriteLn('ExeName: ', ExeName); | |
81 | + TFileSystem.AssertFileExists(ExeName); | |
82 | + MoreParams.Delimiter := ' '; | |
83 | + MoreParams.StrictDelimiter := True; | |
84 | + TExecutor.Execute(ExeName, MoreParams.DelimitedText); | |
85 | + finally | |
86 | + FreeAndNil(MoreParams); | |
87 | + end; | |
88 | + Result := -1; | |
89 | +end; | |
90 | + | |
91 | +procedure TStartViaRegistryMain.InitCmdLineParser; | |
92 | +begin | |
93 | + inherited; | |
94 | + FGetOpt.DequoteParams := False; | |
95 | + FGetOpt.RegisterParam('RegKey', 'Registry key to read, e.g.: "HKLM\Software\Scooter Software\Beyond Compare"'); | |
96 | + FGetOpt.RegisterParam('RegValue', 'Value to read from the RegKey, e.g. ExePath'); | |
97 | + FGetOpt.RegisterParam('MoreParams', 'Parameters for the called program', 0, 255); | |
98 | +end; | |
99 | + | |
100 | +end. | |
101 | + |