English 中文(简体)
在C#中设立海关检查站/载荷
原标题:Creating a custom bootstrap / bootloader in C#

我们决定为我们的部署解决办法建立一个海关检查站。 我们正在重新起草和重新设计我们所有产品的部署战略。 可悲的是,我们没有一个是部署专家。

在这方面,我们迄今已经做了以下工作:

A. 导 言 在InstallShield将编写MSI包。 我们将利用“Installshield”提议的任何特征(一体化、共同登记、登记等)。 InstallShield制造的方言不会被使用(即boot子的陷阱)。 MSIs将无声安装。

B. 出席情况 每当我们需要写进InstallShield能够操作的缝.时,我们将使用DTF在管理法(C#)中写。 我们将建立一个“海关行动框架”,它将“规范”我们如何使用习俗行动。

C. 出席情况 我们将在C#中建立一个“安装”的定制boot(“安装......exe”)。

我们决定采用 多边微型和小型卫星方法,并利用微型和小型卫星交易“链”从推进器(从办公室2007年安装机)安装。

视力演播室和服务器 s锁的激励下,我们设想创建的增强疗法。 推进器将负责:

  1. Prerequisite installation: Each application require a pre-requisite. These pre-requisites are listed in an XML file placed on the same folder as the MSI (inspired from Office 2007 installer) along with other metadata. Depending on current state of the system, the boostrapper will decide which pre-requisite to be installed or not.
  2. Feature selection: We are planning to structure the "internal" MSI s feature in such a way that it will not be appropriate to be displayed right away to the end-user. We will have feature labeled as "Core_Files", or "Vista_Only" or "64bit_Only". Depending on the metadata on the XML file (on item 1) and the target system, the bootstrapper will be responsible in "populating" a "feature tree" that the user can customize (also inspired from Office 2007 bootstrapper).
  3. Pre-installation Checks: The bootstrapper will be responsible in checking if the system is ready to receive the installation. For instance, if a machine needs to reboot prior to installation or if the user needs to manually install a service pack, patch or a windows component. Anything that needs to be done that needs user intervention should be displayed here. Think of it as a check list (a listbox) with checks and exes. (Inspired from SQL server s bootstrapper). The "rules" will be written in C#.
  4. Application Configuration: For application that needs to be "configured" prior to installation. These "parameters" (user configuration) will be passed to the respective MSI via MSI Properties.
  5. Actual Installation: The bootstrapper will then perform the installation. Proper "transaction" should be observed when necessary. All "products" that should be grouped together shall be displayed as one product in Add/Remove Programs (by messing with the ARP entries). Also, proper progress shall be reported by each MSI being installed.

纽约总部 这正是我们迄今所做的。

我认为,在建立诸如DotNetInstaller和BMG等海关boot间装置方面,有两种非方框解决办法。 我们审视了这一问题,但并不像我们所希望的那样灵活。 也有国家邮政局,但我们不相信它是否做好了准备。

因此,我们在这里决定建立我们自己的习俗boot锁。

Question:

我们是否cra? 我们是否应该建立自己的boot锁? 上文所列哪些想法不切实际? 是否有更好的办法?

对我国局势的任何投入都将受到高度赞赏。 另外,如果有问题,请不要犹豫。

问题回答

Frankly, Burn isn t going to be done for at least a year. You already have InstallShield and IMO it has the best off the shelf bootstrapper currently available. I d scope your requirements back and make it fit the box. Pretty much everything I read from you can be done using InstallShield if you learn to push it to it s limits.

我要谈谈伯恩斯或一些已经存在的解决办法。

I m sure that after some time you ll face new problems that you can t now really imagine. If you face them, that means that Burn s developers have already faced them and probably got them solved. If not, Burn has a large community that will fix the potential bug faster than you.

侧重于您重新开发的软件,而不是写作安装装置/装置。

如果我坐在你的鞋子里,我将 give一.。 我几天后到我看看看这是否符合我的要求。





相关问题
Correct place to install demostration projects?

With the new Windows 7 restrictions (well, new to Windows Vista anyways), we can no longer install demo projects to %ProgramFilesFolder%OurApplicationdemo since restricted users will not be able to ...

.deb package conffiles problem

I am distributing one of my applications using a .deb package, but have a problem relating to one of the files. The distribution includes a database file which is constantly updated by the app, on a ...

Closing an application using WiX

In creating my WiX installer I have run into an issue when trying to close an application before installing the upgrade. Below is an example of how I am attempting to do this. <util:...

VS 2005 Setup - HKCU

I am trying to fix an existing application that uses a Visual Studio 2005 setup project. We are requiring it to work on limited user accounts for XP, our app is written in C# for .Net 2.0. It writes ...

Do I want Publish or Release Build in VB.net?

I wrote a little (like 40 lines little) Winforms application with VB.net in Visual Studio 2010. Now I ve released the code as a Google Code project. It s easy for a developer to get the source but I d ...

configsource and installer

I have an project csproj, with app.config file, and logging Ent.Library section using configsource attribute. The logging section is in ahother file Configloggingconfiguration.config. I have a ...

热门标签