Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Dialogfenster zur Laufzeit ändern


3 replies to this topic

Snipey

Snipey
  • Full Members
  • 7 posts

Posted 18 May 2009 - 12:42

Hallo,

folgendes Problem habe ich. Ich spiele bei einem Setup SQL Scripte ein. Dafür benötige ich zwei SQL Connections. Für jede Connection wird wärend des Setups eine Anmeldedialog mit SQLServerSelectLogin2 in einer Schleife aufgerufen.
Ich möchte gerne die StringID eines Textfeldes während die Schleife läuft ändern, damit der User im Dialog einen Hinweis bekommt für welche Datenbank er sich anmelden soll. bShowCxnName auf TRUE zu setzen reicht nicht, es muss ein richtiger Text sein ala "Bitte wählen Sie hier Datenbank blahblah aus!"

Kann ich die String ID eines Textelementes in einem Dialog zur Laufzeit dynamisch ändern?

Danke für jede Hilfe.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 19 May 2009 - 07:37

Die ID kann man nicht ändern - stattdessen könntest man ein Kopie des Dialogs anlegen.
Du kannst aber den Text-Inhalt eines Controls setzen mit der Funktion CtrlSetText. De muss allerdings im Dialog-Skript aufgerufen werden (siehe Beispiel in der Hilfe)

Snipey

Snipey
  • Full Members
  • 7 posts

Posted 20 May 2009 - 14:46

Ich habe mich mal ein bißchen damit beschäftigt, verstanden habe ich es aber nicht.
Mein Problem ist das das Dialog Fenster von SQLServerSelectLogin() aufgerufen wird. Da ist kein Script? Oder muss ich dafür ein komplett eigenes Dialog Feld scripten? Wäre für mehrer SQL Verbindungen einiges an Arbeit.
Ich habe immer mehr das Gefühl als währe die ganze Benutzeroberfläsche von IS nutzlos, da hätte ein Editor auch gereicht, man muss eh alles von Hand machen dry.gif .

ICh hab es versucht mit
szDialogName = " SQLLogIn"
EzDefinneDialog (szDialogName,"","",10201);
CtrlGetText (szDialogName, 1302, szMessage);
MessageBox (szMessage,INFORMATION);

Die IDs sind richtig, aber die MsgBox ist leer.

Zusätzlich geht es jetzt noch darum im Dialog der mit AskDestPath() aufgerufen wird zusätzlich die Laufwerke mit Größenangabe auszugeben. Die Werte habe ich in Variablen vorliegen. Wie kreig ich die in einen Dialog ausgegeben?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 21 May 2009 - 12:41

Den Standard-Code für die Dialoge findest du im Verzeichnis C:\Program Files\InstallShield\2009\Script\Isrt\src