cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
scottd72
Level 7

Setting Components to be NOT shared by default

Is there any way to have new components NOT be shared by default? If not, could this be considered as a configuration setting for a future release?
Labels (1)
0 Kudos
(2) Replies
Cygnusx1
Level 8

In Repackager there are some checkboxes that you can enable/disable for sharing but not for all components as a default. I would like that feature as well as it would save time search/replace in the Component Table.
0 Kudos
scottd72
Level 7

Until there is the ability to set Shared flag up front or let you set all components at once to Shared, I've written a little Perl script that will do the job. This removes the Shared flag from all components in your project file. Just put the name of the Installshield file as a txt file as the first parameter and the output file is the second parameter.

open(INPUT, "< @ARGV");
while ($line = )
{
print "$line";
if ($line =~ m/^\s*$/)
{
while (($nextRow = ) && !($nextRow =~ m!^\s*<\/table>\s*!))
{
if ($nextRow =~ m/^\s*
.*$/)
{
if ($nextRow =~ s!^(\s*)
(.*)<\/td>(.*)<\/td>(.*)<\/td>8<\/td>!$1$2<\/td>$3<\/td>$4<\/td>0<\/td>!) {
print "$nextRow"; }
elsif ($nextRow =~ s!(^\s*)
(.*)<\/td>(.*)<\/td>(.*)<\/td>264<\/td>!$1$2<\/td>$3<\/td>$4<\/td>256<\/td>!) {
print "$nextRow"; }
elsif ($nextRow =~ s!(^\s*)
(.*)<\/td>(.*)<\/td>(.*)<\/td>24<\/td>!$1$2<\/td>$3<\/td>$4<\/td>16<\/td>!) {
print "$nextRow"; }
elsif ($nextRow =~ s!(^\s*)
(.*)<\/td>(.*)<\/td>(.*)<\/td>280<\/td>!$1$2<\/td>$3<\/td>$4<\/td>272<\/td>!) {
print "$nextRow"; }
else {
print "$nextRow"; }
}
else
{
print "$nextRow";
}
}
print "$nextRow";
}
}
exit 1;
0 Kudos