[
Advertise | Submit Code | About us | Contact us | Link us
]
Go!
Membership Services
Login
Register

Home
C# General

General

C# Language

Design & Architecture

Algorithms

Database

Security

Active Directory

COM Interop

Remoting
C# Windows Forms

General

Combo and List boxes

Miscellaneous Controls

Button Controls

Edit Controls
Cutting Edge

ASP.NET 2.0

Visual Studio 2005

Windows Longhorn

SQL Server 2005
C# Multimedia and GDI+

General

DirectX

GDI+

Audio
Internet & Web

General

Images and multimedia

Database

Utilities

Security

ASP.NET Controls

Design and Architecture

Webservices
.NET

General

Design & Architecture

Algorithms

Database

Security

Active Directory

COM Interop

Remoting

ADO.NET

XML.NET

Tools

Enterprise

IDE
Visual Basic .NET

VB.NET General

VB.NET Controls
General Reading

.NET Books Review

Product Showcase

Book Chapters

Business Design & Strategy
Community

Discuss

Job Board

Discussion

CodeXchange
DeveloperLand

Advertise

Submit Code

About us

Contact us

Link us
Miscellaneous

Favorite Links

Downloads

Programming Sites

Top Stories
Regular Expressions

E-Mail

Date/Time
Home > .NET > General
How to work with Assemblies in InstallShield Developer 7.0
Posted by on Monday, March 14, 2005 (EST)

InstallShield Developer 7.0 is the most powerful solution for authoring Windows Installer setups, enabling new features such as application auto-repair and install-on-demand.

This article has been viewed: 3,440 times
Technology: General.

Contents

How to work with Assemblies in InstallShield Developer 7.0

InstallShield Developer 7.0 is the best solution for providing the very easy GUI interface to author installations having both .NET and Side-by-Side components.

InstallShield Introduction:

InstallShield Developer 7.0 is the most powerful and flexible solution for authoring Windows Installer setups, enabling new features such as application auto-repair and install-on-demand. The InstallShield Developer IDE exposes all the capabilities of the Windows Installer architecture via abstracted views. It also offers a Windows Installer Direct Editor that allows you to fine-tune an installation by modifying tables.

.NET Assembly:

A .NET assembly is a core part of the runtime. An assembly is the collection of all information required by the runtime to execute your application. This information is referred to as the Metadata. An assembly can be a DLL file or a Portable Executable (PE) file. An assembly that has been compiled into a portable executable (PE) file has an extension of AppName.exe.

A .NET assembly is something similar to a Windows Installer component, as .NET assemblies are always installed and removed as a singular unit. This is the reason what makes the Windows Installer the perfect engine to install .NET assemblies because the architectures are so similar.

Top Go to Table of Contents

Creating an Installation for a .NET Assembly

A .NET assembly can come in many forms. For example we will discuss a simple .NET assembly containing only one file with the metadata embedded in the header of the file and assume that this assembly was created in Visual Studio.NET. .NET Assemblies can be installed local to the application or to the Global Assembly Cache (if appropriately signed).

These are the steps required to create a component for a simple .NET Assembly:

Step 1:

Create a new project or open your currently existing project in InstallShield Developer 7.0.

Note: In order for your .NET assembly to install properly, the target system must contain the appropriate version of the .NET runtime components. Visual Studio.NET includes aMerge Module for the .NET runtime components. Be sure to include this Merge Module in your project if you are targeting platforms other than Windows XP.

Step 2:

In the Setup Design view, create a component which holds your .NET assembly.

Step 3:

Add all the files belonging to the assembly to the component’s file list.

Step 4:

In the Advance Settings of the component right-click on the Assembly node and select “New .NET Assembly”

Step 5:

After selecting the .NET Assembly node examine the properties. You’ll see that your .DLL or .EXE has automatically been selected as the Manifest file.

Step 6:

Select whether you want the Assembly to be installed to the Global Assembly Cache or not by setting the “Global Cache” property.
Note: Your Assembly must be properly signed in order to be correctly installed into the

Global Assembly Cache. See the .NET documentation for more information.

Step 7:

Set the Name, Version, and PublicKeyToken properties. If your assembly contains other properties, you may add them by clicking on the last row of the property list for your assembly.

Note: If your assembly does not have PublicKeyToken, you’ll want to go into the Direct

Editor and remove the PublicKeyToken value from the MsiAssemblyName table for your assembly.
 

The above steps were used to create a single component for a .NET Assembly. Repeat the above process for each .NET Assembly you are working with.

Top Go to Table of Contents

Creating an Installation for a Side-by-Side (Win32) Assembly

A Side-by-Side (Win32) Assembly usually consists of a single Side-by-Side Portable Executable (.EXE, .DLL, .OCX, etc …) and its accompanying .MANIFEST file. Side-by-Side components only operate Side-by-Side on Windows XP, so you must take special care to author your installation to work on down-level platforms if you intend to support them. Side-by-Side components can be configured to be installed isolated to the application or to the Global Assembly Cache.

These are the steps required to create a component for a Side-by-Side Assembly:

Step 1:

Create a new project or open your currently existing project in InstallShield Developer 7.0

Note: Be sure to create an Install Condition in your Product Properties if your Side-by-Side components don’t support down-level platforms.

Step 2:

In the Setup Design view, create a component to hold your side-by-side assembly.

Step 3:

Add all the files belonging to the assembly to the component’s file list.

Note: If you don’t set a key file, InstallShield will automatically set the .MANIFEST file as the key file in the next step.

Step 4:

In the Advance Settings of the component right-click on the Assembly node and select “New .Win32 Assembly”

Step 5:

After selecting the Win32 Assembly node examine the properties. You’ll see that your .MANIFEST file has automatically been selected as the Manifest file.
 

Note: If you plan to target down-level platforms, be sure to include all the COM data that is part of your assembly in the COM Registration section of the component’s Advanced Settings view. You can also use InstallShield’s “extract COM information at build” or “component wizard” functionality to automatically extract the required COM data for down-level platforms. Note that on Windows XP this information will be ignored and the manifest data will be used instead.

Step 6:

Select whether you want the Assembly to be installed to the Global Assembly Cache or not by setting the “Global Cache” property.

Note: Your Assembly must be properly signed in order to be correctly installed into the

Global Assembly Cache. See the Windows Platform SDK for more information.

Step 7:

Set the Name, Type, and Version properties. These values must be copied exactly as they appear in the assembly manifest. If your assembly contains other properties, you may add them by clicking on the last row of the property list for your assembly.

The above steps were used to create a single component for a Side-by-Side Assembly. Repeat the above process for each Side-by-Side Assembly you are working with.

Top Go to Table of Contents

About santhosh kumar r v

Click here if you want to know more about .

Other articles that may interest you

  • Write a Word Add-In – Part 0
  • Write a Word Add-In – Part I
  • Lengthy Operations on Single Thread in .NET Application
  • Learning Draughts
  • Exceptions and Performance
  • Average Rating :

    Discussion Forums
    Got a programming related question? Hopefully someone has the answer... Want to help out other developers? Visit our discussion forums.

    Sponsored by:

    New Articles

  • Exceptions and Performance
    Almost every time exceptions are mentioned in mailing lists and newsgroups, people say they're really expensive.Let's examine that claim, shall we?

  • Creating multilingual websites - Part 1
    Extend the existing globalization capabilities of .NET to create flexible and powerful multilingual web sites. First, create a custom ResourceManager, and then create custom localized-capable server controls to easily deploy multilingual functionality.

  • Parameter passing in C#
    Many people have become fairly confused about how parameters are passed in C#, particularly with regard to reference types. This page should help to clear up some of that confusion

  • Most Popular Articles

  • LDAP, IIS and WinNT Directory Services
    This article explains how to use .NET Directory Services to retrieve and search directory objects, create new directory objects and edit or delete existing directory objects. Describes Active Directory Application Mode (ADAM) and how to use the IIS, WinNT and LDAP directory (ADSI) provider.

  • An in-depth look at WMI and instrumentation, Part II
    WMI stands for Windows Management Instrumentation and, as the name indicates, is about managing your IT infrastructure this article is the second part of a two-part series.

  • An in-depth look at WMI and instrumentation, Part I
    WMI stands for Windows Management Instrumentation and, as the name indicates, is about managing your IT infrastructure this article provides an in-depth look at WMI and MOM 2005

  • New Books

  • Murach's ASP.NET 2.0 Upgrader's Guide: VB Edition
    What’s new and how to use it! That’s what this book delivers if you’re a VB developer who’s interested in upgrading from ASP.NET 1.x to ASP.NET 2.0.

  • C# in easy steps
    Learn to program with Microsoft’s premier programming language. No previous programming knowledge is assumed. With numerous easy-to-follow examples, this title explains the essentials of object-oriented programming with C#.

  • Murach's ASP.NET web programming with VB.NET
    Murach's ASP.NET web programming with VB.NET by Doug Lowe and Anne Prince is a in depth training and reference book for ASP.NET programming using VB.NET. The book builds upon Murach's previous books and covers more advanced concepts for programming ASP.NET pages.

  • Got Code?

    if you have any article , source code , or anything else you'd like to share with this community that you think others might find useful, please submit it here and we will gladly make it available on this site. submit@developerland.com.
    Partners

    All articles are copyrighted by their individual authors unless otherwise specified , everything else Copyright ©2004-2006 DeveloperLand