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

ISP6 Komponenten in "StartCopy" anzeigen


3 replies to this topic

Herwig Schmidhuber

Herwig Schmidhuber
  • Members
  • 7 posts

Posted 20 February 2001 - 14:07

Hi,
Ich möchte die zu installierenden Komponenten im Dialogfenster "Dlg_SdStartCopy" anzeigen.
Ich habe leider überhaupt keine Ahnung, wie ich
die ausgewählten Komponenten in die Liste bekommen soll.
Normale Variablen sind kein Problem.

In meinem Script habe ich folgenden Eintrag:

Dlg_SdComponentDialog:
    svDir = TARGETDIR;
    nResult = SdComponentDialog (szTitle, szMsg, svDir, szComponents);
      TARGETDIR = svDir;
   if (nResult = BACK) goto Dlg_SdSelectFolder;

Die Variable "szComponents" ist leider leer.

Danke vorab,
Herwig


Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 20 February 2001 - 14:19

du solltest ueber alle komponenten gehen und dir den status deiner wahl besorgen.

ComponentGetData(MEDIA, "komponentenname", COMPONENT_FIELD_SELECTED, bVar, szVar);

ist bVar = TRUE, wurde die komponente angehaeckelt. also holst du dir den namen mit COMPONENT_FIELD_DISPLAYNAME, der jetzt in szVar steht. szVar wird dann in die stringliste gehangen, die du SdShowInfoList uebergibst.

beispiel zum komponentendurchhangeln:

lComponents = ListCreate( STRINGLIST );
ComponentListItems( MEDIA, "", lComponents );
nRes = ListGetFirstString( lComponents, item );
while ( nRes != END_OF_LIST )
 ComponentGetData(MEDIA, item, COMPONENT_FIELD_SELECTED, bVar, szVar);
 // genau hier kannst du dann schabernack mit bVar und szVar treiben
 // so zum beispiel den namen in eine andere liste haengen,
 // die am ende angezeigt werden soll
 nRes = ListGetNextString( lComponents, item );
endwhile;

das "" bedeutet, dass alle childs der rootkomponente zurueckgeliefert werden sollen. um alle verschachtelten komponenten zu bekommen, musst du der sache ne kleine rekursion verpassen. statt dem "" uebergibst du szVar (vorher den namen abfragen).


moege es helfen,
jan

(Edited by Jan Becker at 1:21 pm on Feb. 20, 2001)


Herwig Schmidhuber

Herwig Schmidhuber
  • Members
  • 7 posts

Posted 20 February 2001 - 16:39

Hallo Jan"

Danke für die tolle Anleitung.
Alles hat sofort funktioniert.

Gruesse
Herwig