Home > Installation > Virtual directories creation order in InstallShield 2008

Virtual directories creation order in InstallShield 2008

Недавно столкнулся со следующей проблемой – виртуальные папки при инсталляции создаются не в порядке иерархии, а по какому-то непонятному принципу. В результате этого возникала ошибка и установка прерывалась. Несколько часов (в инсталляторах я пока еще не спец) танцев с бубном и чтения лога дали результат. Как оказалось, каждой виртуальной папке, которую нужно создать, соответствует свой компонент (Component). Виртуальные папки во время установки создаются с помощью Custom Action’a caCreateVRoots, который в свою очередь вызывает функцию CreateIISVRoots из библиотеки IISHelper.dll. Так вот эта самая функция создает виртуальные дирректории не в порядке следования их в иерархии, а в алфавитном порядке соответствующих компонент (!!!). Путем добавления различных букв латинского алфавита к началам имен компонентов я добился того, чтобы папки создавались в правильном порядке.

Кстати, как ни удивительно, но Сеть по этому поводу молчит как партизан. Неужели никто при установке не создает вложенных виртуальных папок? Или это только я такой глупый, что не сразу догадался.

В любом случае, надеюсь, что кому-то моя статья сохранит несколько часов для более интересных занятий 😉

Advertisements
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: