Hi David, Many thanks for your comprehensive response. I had read about the setup projects and templates but, they do not work in the express edition. I suspect I could probably download some templates from the web but I have had no success in finding any to download. My C++ executable does not need any registering and is not really bound to the project. The program however calls the executable as a separate process so, I thought it would be better to include it with the program distribution. The installer seems to have worked Pranav -----Original Message----- From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On Behalf Of David Lant Sent: Wednesday, October 14, 2009 12:48 AM To: program-l@xxxxxxxxxxxxx Subject: [program-l] Re: Choosing an installation mechanism for my visual basic .net application Hi Pranav, By all means use ClickOnce if you like it. There's nothing hidden or complicated about it. If your VB application references another C++ application, then by default Visual Studio will include the referenced component in the installation directory. If, on the other hand, you are using the C++ application in a late bound manner, such that Visual Studio itself knows nothing about it, then the simplest thing is to create a folder in your project and place the C++ executable in there. Include that file in your project as a miscellaneous file and when you go through the procedure to set up your ClickOnce, just make sure that you include all the subfolders in the project path. This is normally the default. .NET will always check the current folder for relative references first, then the subfolders of the current folder and then it may go off to look in the GAC. If you're using ClickOnce, I'd steer clear of the GAC as it's more trouble in the disconnected world you want to be in with ClickOnce. If there are aspects of your C++ program that prevent it from being safely downloaded with ClickOnce, or forces you to acquire a software certificate, then you could just as well switch to the Setup Wizard in Visual Studio. Unfortunately, as I've never even looked at any Express editions of Visual Studio, I don't know whether you get the Setup project templates in the Express edition. But the Setup project templates are perfectly flexible and accessible and I've used them on many occasions. You can manually include files you want to distribute with your application as well as include custom installation actions such as registering components or a host of other things. You can associate these custom actions with various events in the installation process, so you can customise the install, commit or rollback operations to your heart's content. When you've done creating your setup project, you can specify whether you want a bootstrapper to check for the presence of Windows Installer, or simply assume the user has that and only create an MSI. It's up to you. All the best, David -----Original Message----- From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On Behalf Of Pranav Lal Sent: 13 October 2009 15:02 To: program-l@xxxxxxxxxxxxx Subject: [program-l] Re: Choosing an installation mechanism for my visual basic .net application Hi Nick, I have null soft downloaded but it looks too complex. Pranav -----Original Message----- From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On Behalf Of Nick.Adamson@xxxxxxxxxxxxxxxxxxxxxx Sent: Tuesday, October 13, 2009 1:19 PM To: program-l@xxxxxxxxxxxxx Subject: [program-l] Re: Choosing an installation mechanism for my visual basic .net application Hi. I'm a fan of Null Soft scriptable installer, NSIS>. It's free, very powerful and can be gotten from www.nullsoft.com I think. Thanks. Nick. -----Original Message----- From: program-l-bounce@xxxxxxxxxxxxx [mailto:program-l-bounce@xxxxxxxxxxxxx] On Behalf Of Pranav Lal Sent: 12 October 2009 17:14 To: program-l@xxxxxxxxxxxxx Subject: [program-l] Choosing an installation mechanism for my visual basic .net application Hi all, I have created an application in visual basic .net. This application uses an external application that I have written in C++. How do I build an installer? I could have used the click once deployment method supported in Visual Studio Express but I do not see how to include that C++ executable file such that it is copied to the same directory as the application's executable. Does anyone have any suggestions? Pranav ** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq This email and any files attached are intended for the addressee and may contain information of a confidential nature. If you are not the intended recipient, be aware that this email was sent to you in error and you should not disclose, distribute, print, copy or make other use of this email or its attachments. Such actions, in fact, may be unlawful. In compliance with the various Regulations and Acts, General Dynamics United Kingdom Limited reserves the right to monitor (and examine for viruses) all emails and email attachments, both inbound and outbound. Email communications and their attachments may not be secure or error- or virus-free and the company does not accept liability or responsibility for such matters or the consequences thereof. General Dynamics United Kingdom Limited, Registered Office: 100 New Bridge Street, London EC4V 6JA. Registered in England and Wales No: 1911653. ** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq ** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq ** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq ** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq