Visual Studio 2010: prerequisites issue - visual-studio-2010

On Microsoft Visual Studio 2010 I would like to create a installer for a solution I created.
I created it by menu way (File > New project... > Other Project Types > Setup and Deployment > Visual Studio Installer > Setup Project), added files to their correct destinations etc., and all works fine, except for prerequisites...
The problem is that my solution depends on .Net 3.5 and I would like to install it automatically together with the installer, in some offline way - no internet downloads on installation time.
If on installer project properties I mark "create setup to install install prerequisite components" and mark "download prerequisites from the same location as my application"...
... when I try to run, it shows messages like that:
Error 7 The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetFX20\aspnet.msp' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information. D:\Projetos\Eletronica\M013-Moura\HG-V6-release1\VidaCiclada-semTemperatura\VidaCiclada_Installer\VidaCiclada_Installer.vdproj VidaCiclada_Installer
Well, I put my offline installer of .Net 3.5 on the same folder EXE output of my solution is. What am I doing wrong?

Although I could not completely finished my installer package, I found the issue:
I clicked on properties panel
I clicked on the setup project
On property named "Localization", I changed the value to "English (United States)"
So I could build the project and execute the installer normally (except for SQL Server Express, that I would like to install with that package too, but although it is executed with setup, it does not create the Windows services for it...).
I.e., the issue was that my VS2010 doesn't have the files needed for the setup on my native language, "Portuguese (Brazil)", but it has for English language. The final setup will install prerequisites on English language...

Related

How do I change the target platform in a console app in Visual C# 2010 Express or Visual Web Developer 2010 Express?

I don't see any other value other than 'Any CPU' in the drop down list in Properties -> Build -> Configuration -> Platform in Visual C# 2010 Express or in Visual Web Developer 2010 Express.
I just removed some 64-bit dlls and got their 32-bit versions and added a reference to them.
Since then, I've been receiving a BadImageFormatException.
Is it the platform or the platform target?
If you want to add a new platform then do this:
Open the Configuration manager for your solution.
Expand the Platform combo for the project. It will show several items: Any CPU, and .
Press This will open a new dialog to add a new target for your solution. Select x64 for the new platform and Any CPU as the target from where to copy the settings. You can also check the "Create new solution platforms" if you want to add a solution target also.
Then, if you go to the project properties you can select this platform.
I found a couple of suggestions elsewhere but they haven't worked for me so far.
I found this one to be the most useful of all.
http://social.msdn.microsoft.com/Forums/en-US/d4fa83dc-eed1-4ead-96a1-78bbd9ba6d3a/vb-express-target-x86-platform?forum=vblanguage
For anyone who faces this same problem later, here's help. It says:
Express Editions:
The VB and C# Express products do not expose the
Target property inside the development environment.
You will need to carefully modify the project file
using a text or XML editor.
1. Close the project and/or solution
2. Select Open File from the File menu
3. Navigate to the project directory, and highlight
the project file
4. Press the Open button, the project file should open
in the XML editor
5. Locate the first <PropertyGroup> section and add
the following line:
<PlatformTarget>x86</PlatformTarget>
1. Save the project file
2. Reopen the project and/or solution using
Open Project/Solution from the File menu
3. Continue with development, debugging, and testing
Alternatively, if the application is targeted to 64-bit
platforms, you can ensure that the COM controls added to
the application have 64-bit equivalents on the development
and deployment computers.
JohnWein added the following:
Using the above method targets the x86 platform, but it
doesn't show the "Configuration:" and "Platform: " boxes
on the Properties tabs. To get this feature, I made a
template of one of the projects that shows these boxes.
Now I can target a platform and know what platform I
have targeted.

Mix local and download prerequisites in deployment project

According to the question Bundling only part of the prerequisites with ClickOnce a ClickOnce installer can either download ALL prerequisites from the web or expects ALL of the files locally. This seems to be the same for a Visual Studio 2008 deployment project.
As I would also prefer to include only selected prerequisites in an installer archive I was wondering if this is really still state of the art. Will upgrading to Visual Studio 2010 solve this issue or is there any workaround that I overlooked?
So here's an idea that I came up with.
Package the bootstrap installer with all prerequisites except the
.NET framework with "Download prerequisites from the component
vendor's web site" set
Create a small program (batch file or
executable) that is launched instead of the bootstrap installer which
does the following
Check if .NET framework is installed (the bootstrap package files tell you how to check this, e.g. .NET framework is installed if
HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5\1033\Install ==
1)
If yes execute setup.exe -homesite=false which configures the installer not to download any files
Execute setup.exe
Comments welcome!
You can package the prerequisite and set a download URL and put the prerequisite there. Then when the prerequisite is installed by the bootstrapper, it will download it from the URL instead of having to include it in the deployment package. This means, of course, that you have to set up your own bootstrapper package every time you want to do this, but it does work.

How can I redistribute .Net Framework3.5 SP1 with my application by ClickOnce on VS2010

I'm sorry I'm english a little.
I want to redistribute .Net Framework3.5 SP1 using clickonce application(publish tab)
I check .Net Framework3.5 SP1 , but it can not find DotNetFx35Sp1Setup.exe when build process.
If i check .Net Framework4 , it works well(VS2010).
so i tried in vs2008, it works well.
How can i include .netfx35sp1 into clickonce application on vs2010 ?
How are you publishing the application from??? via visual studio 2010?? in that case.. go to your project startup file->properties->publish.. go to pre-requisites. where you will see options like download from vendor, download from the same location, download from the server location. You choose download from vendor's website and also you will see the list of prerequisite available in that popup, where you can check the prerequisites you need. you check the checkbox for .net3.5sp1 and publish.

Visual Studio Click Once deployment problem

I have a visual studio click once deployment. It's upgraded from VS 2008. The part that i'm having a problem with is the Prerequisites. I need for the .net 4 framework and Visual Basic PowerPacks 10.0 to be deployed with the app. I have the check box checked to "Create setup program to install prerequisite componets." I also have the Microsoft .net Framework 4 (x86 and x64) checked and the Microsoft Visual Basic PowerPacks 10.0 checked. the Download prerequisites from teh component vendor's web site is also selected. The publish says it's successful, but when i run the application, it tells me that i need the .net 4 framework installed and an ok button. click the ok button and i'm done. it doesn't provide a link, doesn't launch anything... nothing. From the googing i've done this is the way i'm suppose to have it setup. Can anyone give me some pointers as to what i'm doing wrong.
Thanks
shannon
It is better to add Prerequisites in the same published location. And select download Prerequisites from the same location option button in Prerequisites segment. When you publish build the application, All Prerequisites related folders will be created under the folder you have published the application. This will help you to copy and paste entire folder structure onto live server for deployment. This has to be done for the first time. For the later releases you only have to copy and paste application related files. Of course, If you change any of the Prerequisites then you have to copy them onto live server also.

How can I create an MSI setup?

I've created setups for all my Delphi tools with Inno Setup for years. Now some users rather want an MSI installation package, so they can deploy the setups from a central server to all workstations.
How do I create one? Do I have to buy Visual Studio or some other product?
You can use Wix (which is free) to create an MSI installation package.
WiX Tutorial - Creating an Installer MSI with Wix
If you don't understand Windows Installer then I highly recommend The Definitive Guide to Windows Installer. You can't really use WiX without understanding MSI. Also worth downloading is the Windows Installer 4.5 SDK.
If you don't want to learn the Windows Installer fundamentals, then you'll need some wizard type package to hide all the nitty gritty details and hold your hand. There are plenty of options, some more expensive than others.
InstallShield
Advanced Installer
MSI Factory
etc..
However still I'd suggest picking up the above book and taking some time to understand what's going on "under the hood", it'll really help you figure out what's going wrong when customers start complaining that something is broken with the setup :)
You can use Visual Studio - that's paid.
You can use https://www.advancedinstaller.com/ - that has a free edition.
You can use http://nsis.sourceforge.net/Main_Page - for example Winamp uses this installer - and is very configurable and is Open Source.
Google "Freeware MSI installer".
e.g. https://www.advancedinstaller.com/
Several options here:
http://rbytes.net/software/development_c/install-and-setup_s/
Though being Windows, most are "shareware" rather than truly free and open source.
In Visual Studio (including the free community editions) you can install the Microsoft Visual Studio Installer Projects extension [1] which allows you to create an MSI installation package. To install it from within Visual Studio:
Go to Extensions -> Manage Extensions in the menu bar
Search for Installer Projects in the search box
Select Microsoft Visual Studio Installer Projects and hit Download
Restart Visual Studio
Once the extension is installed, you'll create a new project that will contain all of the files and settings for the MSI. To do this:
Go to File -> New -> Project in the menu bar
Change the drop down menus visible to show All languages, All platforms, and All project types respectively
Scroll down in the project type list and towards the bottom select Setup Wizard: Create a Windows Installer project with the aid of a wizard.
Hit Next.
Work through the prompts to choose the installer project name and location. Choose Create a setup for a Windows application at Step 2 and in Step 3 choose the executable and other files that should be included in the MSI (hit Add..). At the end, hit Create.
To build the actual MSI go to Build -> Build Solution in the top menu, and you should see a message like the following in the Output window:
Build started...
------ Starting pre-build validation for project 'Setup1' ------
------ Pre-build validation for project 'Setup1' completed ------
------ Build started: Project: Setup1, Configuration: Debug ------
Building file 'C:\Users\zelda\Source\Repos\Setup1\Setup1\Debug\Setup1.msi'...
Packaging file 'test.exe'...
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
What's created by default is a very basic MSI, but for additional configuration like creating custom actions, adding/changing registry keys, configuring the user interface associated with the MSI, etc., see the full documentation [2]
[1] https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects
[2] https://aka.ms/vdproj-docs
You can use "Visual studio installer project" and its free...
This is very easy to create installer and has GUI.(Most of the freeware MSI creation tool does not have a GUI part)
You will find many tutorials to create an installer easily on the internet
To install. just search Visual Studio Installer Project in your Visual Studio
Visual Studio-> Tools-> Extensions&updates ->search Visual Studio Installer Project. Download it and enjoy...
Look for Windows Installer XML (WiX)
You can purchase InstallShield, the market leader for creating installation packages. It offers many features beyond what you get with freeware solutions.
Warning: InstallShield is insanely expensive!
In my opinion you should use Wix#, which nicely hides most of the complexity of building an MSI installation pacakge.
It allows you to perform all possible kinds of customization using a more easier language compared to WiX.

Resources