Entwickler-Ecke

Programmierwerkzeuge - Inno Setup: Sprache + Icons


mick - So 16.01.05 00:10
Titel: Inno Setup: Sprache + Icons
hallo leute.

zwei kurze fragen zum inno setup:

1)
wie stelle ich die sprache der (de-)installation von englisch auf deutsch? habe zwar

Quelltext
1:
2:
3:
[LangOptions]
LanguageName=German
LanguageID=$0407

an skript-datei-ende hinzugefuegt, aber das klappt irgendwie nicht (oder stehen diese zeilen fuer etwas anderes?).

2)
mit welcher anweisung kann ich das icon fuer die verknuepfung meiner hauptanwendung im startmenue (oder desktop oder quick launch) aendern? der nimmt mir naemlich immer das delphi7-icon, das auch meine compilierte delphi-exe (automatisch) hat.


danke + ciao,
mijozi.


ps: ach, und noch eine spezielle kleinigkeit:

3) icon (de-)installations-datei
mit dem istool kann ich ja schoen einfach ein icopn auswaehlen in den optionen fuer die setup-datei. dieses icon wird dann aber auch fuer die deinstallationsdatei verwendet. wuerde da aber gerne das standard-deinstallations-icon haben. geht das? wie?

Moderiert von user profile iconTino: Titel geändert.


IngoD7 - So 16.01.05 00:29
Titel: Re: inno setup: sprache + icons
Habe auf dieser Kiste hier kein Inno, daher jetzt aus dem Kopf und ohne Gewähr.

mick hat folgendes geschrieben:
1)
wie stelle ich die sprache der (de-)installation von englisch auf deutsch? habe zwar
Indem du a.) die Deutsch-Datei dafür einbindest bzw. b.) die Deutsch-Datei als Default-Datei umbenennst.
a.) Wie das einbinden geht, weiß ich jetzt überhaupt nicht aus dem Kopf.
Die Sprach-Dateien gibt es für mehrere Sprachen auf der HP von InnoSetup. Ich glaube, die heißen *.isl. Schaue ansonsten in die FAQs von InnoSetup. Da steht's auch beschrieben.

mick hat folgendes geschrieben:
2)
mit welcher anweisung kann ich das icon fuer die verknuepfung meiner hauptanwendung im startmenue (oder desktop oder quick launch) aendern? der nimmt mir naemlich immer das delphi7-icon, das auch meine compilierte delphi-exe (automatisch) hat.
Das ist in erster Näherung ja normal. Warum änderst du das Icon deiner Delphi-Anwendung denn nicht?
Ob man das Icon der Verknüpfungen speziell aus Inno heraus bestimmen kann, weiß ich jetzt nicht.


Delete - So 16.01.05 00:38
Titel: Re: inno setup: sprache + icons
IngoD7 hat folgendes geschrieben:
a.) Wie das einbinden geht, weiß ich jetzt überhaupt nicht aus dem Kopf.

Hier naht er, der Rett-er:

Quelltext
1:
2:
[Languages]
Name: "de"; MessagesFile: "compiler:languages\German.isl"

Dann aber auch richtig damit arbeiten und alle Meldungen bei "[CustomMessages]" einbinden und nutzen, bspw.

Quelltext
1:
2:
[CustomMessages]
de.DocSet=Win32-API-Tutorials für Delphi

weil dann mehrsprachige Setups ohne allzu großen Aufwand hergestellt werden können.

Zitat:
Ob man das Icon der Verknüpfungen speziell aus Inno heraus bestimmen kann, weiß ich jetzt nicht.

Ja. Mal ein Beispiel, weil ich nicht das Standard-Hilfedateien-Symbol, sondern das dem Setup beiliegende Tutorials-Icon haben wollte:

Quelltext
1:
2:
3:
[Icons]
Name: "{group}\{cm:DocSet}"; FileName: "{code:GetDExplorePath|''}";
  ... IconFilename: "{app}\tutorials.ico";

(btw: s. Einsatz der oben definierten deutschen Meldung "DocSet", "de"-Präfix muss bei der Angabe ignoriert werden) Aber in dem speziellen Fall wäre es sicher einfacher, das Symbol der Exe auszutauschen, so wie du das bereits vorgeschlagen hast. :)


mick - So 16.01.05 12:28

hi leute.

danke fuer eure hilfe.

mathias, wenn ich das hier richtig sehe, bist du anscheinend der spezi hier fuer die setup-utilities. daher nochmals genau:

1)
a) soll ich dann einfach die beiden folgenden anweisungen von dir in mein skript mit aufnehmen?
b) koenntest du nochmals ganz knapp fuer mich "dummie" dazuschreiben, was der kram genau bedeutet?

[Languages]
Name: "de"; MessagesFile: "compiler:languages\German.isl"

[CustomMessages]
de.DocSet=Win32-API-Tutorials für Delphi

2)
die installationsdatei soll das icon xy aus dem ordner d:\work haben (also d:\work\xy.ico).
jetzt dachte ich an:

[Setup]
SetupIconFile=D:\Work\xy.ico

aber dann hat die deinstallationsdatei im startmenue auch dieses icon. das will ich aber nicht, sondern dort das standard-icon. wie geht das? aus deinem code-fragment

[Icons]
Name: "{group}\{cm:DocSet}"; FileName: "{code:GetDExplorePath|''}";
... IconFilename: "{app}\tutorials.ico";

werde ich leider gar nicht schlau. meinst du, du koenntest dir kurz die zeit fuer mich nehmen? ;-)

besten gruss,
ciao,
mijozi.


Delete - So 16.01.05 15:07

Also, wenn du eine andere Sprache einbindest (in deinem Fall Deutsch), dann sieht das so aus:

Quelltext
1:
2:
[Languages]
Name: "de"; MessagesFile: "compiler:languages\German.isl"

Klar? Du öffnest das Skript mit dem Inno Setup-Editor und trägst diese beiden Zeilen ein. Wenn du das Skript jetzt kompilierst, dann ist das Setup Deutsch. Nun machen die meisten einfach weiter und tragen deutsche Namen, Begriffe, Verknüpfungen usw. ein. Etwa als Verknüpfung:

Quelltext
1:
2:
[Icon]
Name: "{group}\Mein Programm"; FileName: "{app}\ExeDatei.exe" ...

Willst du das Setup vllt. aber mehrsprachig gestalten, dann hast du ein Problem, weil du zwar mehrere Sprachen einbinden kannst, aber die Verknüpfungen bzw. sämtliche benutzte Texte sind nach wie vor Deutsch.

Darum der Vorschlag, für alle Texte die Sektion [CustomMessages] zu verwenden. Dann würde ein deutsch-englisches Setup nämlich so aussehen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
[Languages]
Name: "de"; MessagesFile: "compiler:languages\German.isl"
Name: "en"; MessagesFile: "compiler:Default.isl

[CustomMessages]
de.MyApp=Mein Programm
en.MyApp=My Application

[Icon]
Name: "{group}\{cm:MyApp}"; FileName: "{app}\ExeDatei.exe" ...

Würdest du dieses Setup starten, würdest du am Anfang einen Dialog zur Sprachauswahl sehen. Wählst du Deutsch, legt das Setup eine Verknüpfung namens "Mein Programm" an. Wählst du Englisch, heißt die Verknüpfung stattdessen "My Application". Vllt. etwas umständlicher, dafür aber der bessere Weg. Auch wenn du nur eine Sprache benutzt, Deutsch, solltest du so vorgehen.
Brauchst du solche Meldungen im [Code]-Abschnitt, dann schau dir mal in der Hilfe die Funktion "ExpandConstant" an.

Zum Symbol: Dazu solltest du mal in die Inno Setup-Hilfe gucken. Ich glaube aber, das gewünschte Symbol wird generell für Installer/Deinstaller benutzt. Ob man das ändern kann, weiß ich nicht.


mick - So 16.01.05 16:33

hi mathias.

super, vielen dank fuer deine infos!

zu icon:
da scheint etwas zu gehen mit hilfe von SetupIconFile und UninstallIconFile.


nebenbei:
weisst du wie ich das layout aendere von den fenstern (grafik) bei dem installationsassistenten? also wechsel zw. klassisch und modern (vgl. images im inno setup programmordner)?


ciao,
mijozi.



ps: nachtrag:
habe das versucht mit deiner anleitung fuer zweisprachiges setup. habe aber in meinem code noch stehen:
[LangOptions]
LanguageName=German
LanguageID=$0407

das scheint dabei probleme zu machen. wozu sind langoptions gut?


Delete - So 16.01.05 19:43

Das Layout in dem Sinn kannst du nicht ändern. Du kannst lediglich die Bilder austauschen. Um bspw. die neuen, mit Inno Setup 5 mitgelieferten Pics zu nutzen, ergänzt du in der [Setup]-Sektion:

Quelltext
1:
2:
3:
[Setup]
WizardImageFile=compiler:WizModernImage-IS.bmp
WizardSmallImageFile=compiler:WizModernSmallImage-IS.bmp

Steht auch in der Hilfe von Inno Setup. Aber: Dein Setup wird dadurch entsprechend größer, weil die Bilder an die Setup-Exe angehangen werden.

Zur Sprache: Wenn´s Probleme macht, dann nimm´s doch raus. Und schau mal in die Hilfe von Inno Setup. Dort wird der Sinn dieser Sektion erklärt. Ich habe sie bspw. bisher nie gebraucht.


mick - So 16.01.05 19:51

alles klar!

ciao,
mijozi.


Coder - So 16.01.05 19:55

Falls du das mit dem Icon noch nicht hingekriegt hast versuchs mal mit dem Resource Hacker [http://www.users.on.net/johnson/resourcehacker/].


mick - So 16.01.05 21:25

Coder hat folgendes geschrieben:
Falls du das mit dem Icon noch nicht hingekriegt hast versuchs mal mit dem Resource Hacker [http://www.users.on.net/johnson/resourcehacker/].


ja, davon habe ich auch gelesen in anderen foren. habe mir das prog besorgt, aber ich muss sagen, ich kann es nicht leiden, da ich da keine vorschau habe als uebersicht. finde icon ripper besser.

ciao,
mijozi.