Entwickler-Ecke

Programmierwerkzeuge - Inno Setup Script: Compilierfehler nicht zu finden


discipuli - Fr 30.12.16 13:13
Titel: Inno Setup Script: Compilierfehler nicht zu finden
In der rot markierten Zeil tritt der Fehler auf
Mit der Meldung die Zeile 2 sei nicht ok.hier grün
dies ist die Meldung
Parsing [Files] section, line 2 of i:\ActivSetup\scripts\isxdl\isxdl.iss
*** Compile aborted.



Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
; Script generated by the Inno Script Studio Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

#define MyAppName "ActivInform"
#define MyAppVersion "3.5"
#define MyAppPublisher "activinform..eu"
#define MyAppURL "http://www.activinform.com/"
#define MyAppExeName "ActivInform.exe"

#define use_sqlcompact4
#define use_dotnetfx40

[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{43825547-684F-4BF9-99C2-F4A3D37F6C64}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\ActivCommOrg
DisableDirPage=yes
DisableWelcomePage=no
DefaultGroupName=ActivCommOrg\{#MyAppName}
DisableProgramGroupPage=yes
;LicenseFile=Texte\meine_Vereinbarung.txt
;LicenseFile=i:\ActivSetup\Texte\meine_Vereinbarung.txt
LicenseFile=i:\ActivSetup\Texte\Activ_EULA_2016_German.txt
;InfoBeforeFile=Texte\Information_vor_Installation.txt
;InfoAfterFile=Texte\Information_nach_Installation.txt
InfoAfterFile=i:\ActivSetup\Texte\Information_nach_Installation.txt
OutputDir=bin
OutputBaseFilename=ActivSetup
Compression=lzma
SolidCompression=yes

PrivilegesRequired=admin
;WizardImageFile=Logo.bmp
WizardImageFile=i:\ActivSetup\Grafik\Logo_neu.jpg
WizardSmallImageFile=i:\ActivSetup\Grafik\Logo_klein.bmp
[Languages]
;Name: "english"; MessagesFile: "compiler:Default.isl"
;Name: "german"; MessagesFile: "compiler:Languages\German.isl"
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
; Hier alle Dateien und Verzeichnisse, die unter ActivInform liegen, werden mitinstalliert
Source: "i:\ActivSetup\Quelldaten_Inform\ActivInform\*"; DestDir: "{app}\{#MyAppName}"; Flags: recursesubdirs ; Permissions: everyone-full



; Hier alle Dateien und Verzeichnisse, die unter Daten liegen, werden mitinstalliert
;Source: "Quelldaten\Daten\*"; DestDir: "{app}\Daten"; Flags: recursesubdirs  ; Permissions: everyone-full
Source:"i:\ActivSetup\Quelldaten_Inform\Daten\*"; DestDir: "{app}\Daten"; Flags: recursesubdirs  ; Permissions: everyone-full

; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppName}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppName}\{#MyAppExeName}"; Tasks: desktopicon

[Run]
Filename: "{app}\{#MyAppName}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

[Dirs]
Name: "{app}\{#MyAppName}\Programmverzeichnis"; Permissions: everyone-full

[Code]
// shared code for installing the products
//#include "scripts\products.iss"
#include "i:\ActivSetup\scripts\products.iss"

// helper functions
#include "i:\ActivSetup\scripts\products\stringversion.iss"
#include "i:\ActivSetup\scripts\products\winversion.iss"
#include "i:\ActivSetup\scripts\products\fileversion.iss"
#include "i:\ActivSetup\scripts\products\dotnetfxversion.iss"

// SQL Compact 3.5
#include "i:\ActivSetup\scripts\products\sqlcompact35sp2.iss"

// SQL Compact 4.0
#include "i:\ActivSetup\scripts\products\sqlcompact4.iss"
// .Net
#include "i:\ActivSetup\scripts\products\dotnetfx40client.iss"

function InitializeSetup(): boolean;
begin
  // initialize windows version
  initwinversion();

#ifdef use_iis
  if (not iis()) then exit;
#endif

#ifdef use_msi20
  msi20('2.0'); // min allowed version is 2.0
#endif
#ifdef use_msi31
  msi31('3.1'); // min allowed version is 3.1
#endif
#ifdef use_msi45
  msi45('4.5'); // min allowed version is 4.5
#endif
#ifdef use_ie6
  ie6('5.0.2919'); // min allowed version is 5.0.2919
#endif

#ifdef use_dotnetfx11
  dotnetfx11();
#ifdef use_dotnetfx11lp
  dotnetfx11lp();
#endif
  dotnetfx11sp1();
#endif

  // install .netfx 2.0 sp2 if possible; if not sp1 if possible; if not .netfx 2.0
#ifdef use_dotnetfx20
  // check if .netfx 2.0 can be installed on this OS
  if not minwinspversion(5, 0, 3) then begin
    msgbox(fmtmessage(custommessage('depinstall_missing'), [fmtmessage(custommessage('win_sp_title'), ['2000', '3'])]), mberror, mb_ok);
    exit;
  end;
  if not minwinspversion(5, 1, 2) then begin
    msgbox(fmtmessage(custommessage('depinstall_missing'), [fmtmessage(custommessage('win_sp_title'), ['XP', '2'])]), mberror, mb_ok);
    exit;
  end;

  if minwinversion(5, 1) then begin
    dotnetfx20sp2();
#ifdef use_dotnetfx20lp
    dotnetfx20sp2lp();
#endif
  end else begin
    if minwinversion(5, 0) and minwinspversion(5, 0, 4) then begin
#ifdef use_kb835732
      kb835732();
#endif
      dotnetfx20sp1();
#ifdef use_dotnetfx20lp
      dotnetfx20sp1lp();
#endif
    end else begin
      dotnetfx20();
#ifdef use_dotnetfx20lp
      dotnetfx20lp();
#endif
    end;
  end;
#endif

#ifdef use_dotnetfx35
  //dotnetfx35();
  dotnetfx35sp1();
#ifdef use_dotnetfx35lp
  //dotnetfx35lp();
  dotnetfx35sp1lp();
#endif
#endif

#ifdef use_wic
  wic();
#endif

  // if no .netfx 4.0 is found, install the client (smallest)
#ifdef use_dotnetfx40
  if (not netfxinstalled(NetFx40Client, '') and not netfxinstalled(NetFx40Full, '')) then
    dotnetfx40client();
#endif

#ifdef use_dotnetfx46
    dotnetfx46(50); // min allowed version is 4.5.0
#endif

#ifdef use_vc2005
  vcredist2005();
#endif
#ifdef use_vc2008
  vcredist2008();
#endif
#ifdef use_vc2010
  vcredist2010();
#endif
#ifdef use_vc2012
  vcredist2012();
#endif
#ifdef use_vc2013
  //SetForceX86(true); // force 32-bit install of next products
  vcredist2013();
  //SetForceX86(false); // disable forced 32-bit install again
#endif
#ifdef use_vc2015
  vcredist2015();
#endif

#ifdef use_mdac28
  mdac28('2.7'); // min allowed version is 2.7
#endif
#ifdef use_jet4sp8
  jet4sp8('4.0.8015'); // min allowed version is 4.0.8015
#endif

#ifdef use_sqlcompact35sp2
  sqlcompact35sp2();
#endif

#ifdef use_sqlcompact4
  sqlcompact4();
#endif

#ifdef use_sql2005express
  sql2005express();
#endif
#ifdef use_sql2008express
  sql2008express();
#endif

  Result := true;
end;

var
lblDomain: TLabel;
lblUserName: TLabel;
lblPassword: TLabel;
txtDomain: TEdit;
txtUserName: TEdit;
txtUserPassword: TPasswordEdit;
BtnImage: TBitmapImage;

procedure frmDomainReg_Activate(Page: TWizardPage);
begin
end;

function frmDomainReg_ShouldSkipPage(Page: TWizardPage): Boolean;
begin
Result := False;
end;

function frmDomainReg_BackButtonClick(Page: TWizardPage): Boolean;
begin
Result := True;
end;

function frmDomainReg_NextButtonClick(Page: TWizardPage): Boolean;
begin
Result := True;
end;
procedure frmDomainReg_CancelButtonClick(Page: TWizardPage; var Cancel, Confirm: Boolean);
begin
end;

function frmDomainReg_CreatePage(PreviousPageId: Integer): Integer;
var
Page: TWizardPage;
begin
Page := CreateCustomPage(
PreviousPageId,
'Domain Registration',
'Enter Domain Registration Data'
);
{ lblDomain }
lblDomain := TLabel.Create(Page);
with lblDomain do
begin
Parent := Page.Surface;
Left := ScaleX(24);
Top := ScaleY(24);
Width := ScaleX(35);
Height := ScaleY(13);
Caption := 'Domain';
end;
ExtractTemporaryFile('Logo.bmp');
BtnImage := TBitmapImage.Create(WizardForm);
  with BtnImage do 
  begin
    Parent := WizardForm.SelectTasksPage;
    Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\Logo.bmp');
    AutoSize := True;
    Left := 0;
    Top := WizardForm.SelectTasksPage.Top + WizardForm.SelectTasksPage.Height - 
      Height - 8;
    Cursor := crHand;
    {OnClick := @LogoOnClick;            }
  end;


end;
procedure InitializeWizard();

begin
// Welcome page
  // Hide the labels
  WizardForm.WelcomeLabel1.Visible := False;
  WizardForm.WelcomeLabel2.Visible := False;
  // Stretch image over whole page
  WizardForm.WizardBitmapImage.Width := WizardForm.WizardBitmapImage.Parent.Width;
   
  //progress bar
  WizardForm.ProgressGauge.Width := WizardForm.ProgressGauge.Parent.Width;
  WizardForm.ProgressGauge.Top := 60;
  WizardForm.ProgressGauge.Height := 30;
 
  // Finished page
  // Hide the labels
 // WizardForm.FinishedLabel.Visible := False;
 // WizardForm.FinishedHeadingLabel.Visible := False;
  // Stretch image over whole page
  //WizardForm.WizardBitmapImage2.Width := WizardForm.WizardBitmapImage2.Parent.Width;
{this page will come after welcome page}
{frmDomainReg_CreatePage(wpWelcome);}
end;

procedure InitializeWizard_Wahle();
var
Page: TWizardPage;
ProgressBar: TNewProgressBar;
BitmapImageA: TBitmapImage;
BitmapFileName: String;
Form: TSetupForm;
{ProgressBar: TNewProgressBar;}
Panel2: TPanel;
begin



Page := CreateCustomPage(wpWelcome, 'Installationsprozess', 'Die Dateien werden kopiert ...');
BitmapFileName := ExpandConstant('{tmp}\Logo.bmp');
ExtractTemporaryFile(ExtractFileName(BitmapFileName));

BitmapImageA := TBitmapImage.Create(Page);
BitmapImageA.AutoSize := True;
BitmapImageA.Bitmap.LoadFromFile(BitmapFileName);
BitmapImageA.Cursor := crHand;
//BitmapImageA.OnClick := @BitmapImageOnClick;
Page.Surface.Color := clRed;
BitmapImageA.Parent := Page.Surface;
BitmapImageA.Align:= alCLient;
BitmapImageA.Stretch:= True;



Form := CreateCustomForm();
Form.ClientWidth := ScaleX(502);
Form.ClientHeight := ScaleY(387);
Form.Caption := 'TSetupForm';
Form.CenterInsideControl(WizardForm, False);

Panel2 := TPanel.Create(Form);
Panel2.Height := 50;
Panel2.Caption := 'Fortschritt';
Panel2.Color := clWindow;
Panel2.Align := alBottom;
Panel2.ParentBackground := False;
Panel2.Parent := Form;

ProgressBar := TNewProgressBar.Create(Form);
ProgressBar.Width := Panel2.Width - 50;
ProgressBar.Height := Panel2.Height - 20;
ProgressBar.Left := 25;
ProgressBar.Top := 10;
ProgressBar.Parent := Panel2;
ProgressBar.Position := 25;

end;


Moderiert von user profile iconChristian S.: Code-Tags hinzugefügt
Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Fr 30.12.2016 um 13:03
Moderiert von user profile iconTh69: Titel geändert.


Th69 - Fr 30.12.16 14:21

Hast du schon mal versucht ein Leerzeichen nach dem Doppelpunkt zu setzen:

Quelltext
1:
Source: "i:\ActivSetup\Quelldaten_Inform\Daten\*"; ...                    


discipuli - Sa 07.01.17 22:31

Ich bin wieder da.
Das mit dem Leerzeichren habe ich versucht.
Dann sagt der Compiler sofort geht nicht
Es ist weiterhin die Frage warum nach isxdl.dll sucht, das auf dem Pfad garantiert vorhanden ist.
Es gibt aber keine Zeile in isxdl.dll oder nach isxdl.iss gesucht wird.

Inzwischen bin ich der Meinung, dass der Fehler hier liegt
Die markierte Zeile ist nämlich die Zeile 2
Es kommt die Meldung der AppName ist nicht spezifiziert
Wo wird der spezifiziert?
[Files]
Source: "ActivSetup\scripts\isxdl\isxdl.iss"; Flags: dontcopy

[Code]
procedure isxdl_AddFile(URL, Filename: PAnsiChar);
external 'isxdl_AddFile@files:isxdl.dll stdcall';

function isxdl_DownloadFiles(hWnd: Integer): Integer;
external 'isxdl_DownloadFiles@files:isxdl.dll stdcall';

function isxdl_SetOption(Option, Value: PAnsiChar): Integer;
external 'isxdl_SetOption@files:isxdl.dll stdcall';


Discipuli


discipuli - So 08.01.17 18:05

Hallo keiner da, der mir hilft?
Discipuli


Christian S. - So 08.01.17 18:21

Du hast neun Tage nichts von Dir hören lassen. Und jetzt erwartest Du, dass alle springen, wenn Du wieder da bist? Ziemlich unverschämt ...


discipuli - Mo 09.01.17 10:40

Stimmt,
ich erwarte nicht dass alle springen.
Jetzt hat das normale Jahr begonnen.
Ich bin mindestens 3 mal täglich emgfangsbereit
und werde auch umgehend antworten.
Discipuli


Nersgatt - Mo 09.01.17 10:54

user profile icondiscipuli hat folgendes geschrieben Zum zitierten Posting springen:

Es kommt die Meldung der AppName ist nicht spezifiziert


Poste bitte doch mal alle Meldungen, die ausgegeben werden, wenn Du das Script compilieren willst.
Bitte per Copy&Paste, damit wir die genauen Meldungen haben.


discipuli - Mo 09.01.17 14:48

Dies ist die letzte Zeile im Hauptprogramm die diese Fehlemelung bringt
Parsing [Files] section, line 2 of j:\ActivSetup\scripts\isxdl\isxdl.iss
*** Compile aborted.
Dort finde ich keine Zeile die irgendwas mit Isxd.ll zu tun hat
Es wird aber auf eine Zeile 2 verwiesen die macht aber nur Sinn in dem Unterprogramm
Dort liegt diese 2. Zeile
[Files]
Source: "j:\ActivSetup\Sprachen\isxdl.dll"; Flags: dontcopy
[Code]
procedure isxdl_AddFile(URL, Filename: PAnsiChar);
external 'isxdl_AddFile@files:isxdl.dll stdcall';

function isxdl_DownloadFiles(hWnd: Integer): Integer;
external 'isxdl_DownloadFiles@files:isxdl.dll stdcall';

function isxdl_SetOption(Option, Value: PAnsiChar): Integer;
external 'isxdl_SetOption@files:isxdl.dll stdcall';


Th69 - Mo 09.01.17 15:35

Also mir fällt bei deinem Screenshot der Rechtschreibfehler "produgt_iss" auf.

Und dann fällt mir generell auf, daß du alle Pfade absolut angegeben hast (zuerst "i:\..." - jetzt "j:\...") - kommt mir eigenartig vor (ist zwar schon etwas länger her, daß ich zuletzt mit Inno Setup gearbeitet hatte, aber kann mich nicht erinnern jemals absolute Pfade verwendet zu haben - und wenn dann als Variable/Makro).