Ich habe ein Problem mit Componenten
in IS6.3 (habe sie von IS5.5 übernommen).
Es scheint so, daß nur eine bestimmte Anzahl an Componenten zulässig sind etwa 20 Stück. Wenn ich neue Componenten dazuhänge und diese installieren möchte bekomme ich einen Transferfehler (code 0).
Vielleicht liegt es daran, daß ich das OnMoving() nicht verwende. Unten ein Codeausschnitt, der die Componenten routine zeigen soll.
Codeausschnitt meiner Transferfunkion:
function UsdefInstallFiles(strComponent)
// variablen ..
begin
//abwahl aller bestehenden componenten
ComponentSelectItem (MEDIA,COMPONENT_PROJECTINI, FALSE);
ComponentSelectItem (MEDIA,COMPONENT_LAUNCH, FALSE);
ComponentSelectItem (MEDIA,COMPONENT_LAUNCHINI,FALSE);
// und so weiter ....
if (strComponent % COMPONENT_LAUNCH) then
ComponentSelectItem (MEDIA,COMPONENT_LAUNCH,TRUE);
nResult=ComponentSetTarget (MEDIA,"<svNewDir>",g_strMainDir);
elseif(strComponent=COMPONENT_LAUNCHINI) then
ComponentSelectItem (MEDIA,COMPONENT_LAUNCHINI,TRUE);
nResult=ComponentSetTarget (MEDIA,"<svNewDir>",g_strMainDir);
elseif (strComponent % COMPONENT_PROJECTINI) then
ComponentSelectItem (MEDIA,COMPONENT_PROJECTINI,TRUE);
nResult=ComponentSetTarget (MEDIA,"<svNewDir>",g_strStrgDir);
// und einige elseif zweige mehr ...
endif;
//Files kopieren
nResult=ComponentMoveData (MEDIA,nDisk,0);
//Fehler eventuell auswerten
if(nResult < 0) then
UsdefHandleComponentError(nResult);
return(FALSE);
endif;
ComponentMoveData ("",nDisk,0);
//abwahl aller bestehenden componenten
ComponentSelectItem (MEDIA,COMPONENT_PROJECTINI, FALSE);
ComponentSelectItem (MEDIA,COMPONENT_LAUNCH, FALSE);
ComponentSelectItem (MEDIA,COMPONENT_LAUNCHINI,FALSE);
// und so weiter ....
return (TRUE);
end;
Es würde mich freuen, wenn DU mir einen Rat geben könntest !
mit lieben grüssen von robert