.Net 3.5 app on Win PE 4.0 image - winpe

Assuming a WinPE 4.0 image is setup correctly with the WinPE-NetFx4.cab, WinPE-NetFx4_en-us.cab and prerequisite packages like WMI, should an app built in Visual Studio 2008 for .NET 3.5 execute? Or, is the app linked to strong name signed 3.5 assemblies such that it will not use the equivalent ones in .NET 4.0?

I'm also using WinPE 4.0 and experienced the same issue. Most of my app developed using earlier version of .NET Framework (.NET 3.0 & 3.5) will not execute (execute but nothing show up on screen)
A further investigation was made into the WinPE 4.0 WIM's Windows directory "Windows\Microsoft.NET\Framework" show only signs of version 4 (for my case v4.0.30319) was installed (WinPE-NetFx4.cab).
This concludes Microsoft's WinPE 4.0 only supports .NET Framework 4.
In order to make your app work again, re-compiled them using .NET Framework 4 assemblies.

Related

Visual Studio 2019 Net 5 ASP.NET Core WebApp Error MSB3644 The reference assemblies for .NETFramework,Version=v5.0 were not found

I create a project as per the screenshots and the following error appears when I try to Build or Run.
Error MSB3644 The reference assemblies for .NETFramework,Version=v5.0 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks WebApplication1 C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets 1177
Below is my about screen, shouldn't show with Net Version 5.0 as opposed to Version 4.8.03752?
If I visit the following link:
https://learn.microsoft.com/en-us/dotnet/framework/install/guide-for-developers
It states that my NET version was part of my Visual Studio 2019 (16.3 update)
.NET 5 is actually .NET Core 5 and replaces .NET 4.x. New development continues on the .NET Core line only. .NET Old will only get fixes from now on. That's why you won't see any .NET Old versions beyond 4.8 in Visual Studio.
.NET 5 is supported in the latest Visual Studio version, 16.8. You need to upgrade to the latest version. The final of both .NET 5 and Visual Studio 16.8 were released yesterday during dotNETConf 2020. You can find the first day's sessions in .NET's YouTube channel.
The sessions explain what .NET 5 is, what's new, how to port existing applications from .NET Framework 4.x to .NET 5 including desktop applications like Windows Forms and WPF applications.
Some early .NET 5 previews were supported in 16.7 but the latest previews and RC versions were only supported on 16.8

.NET 4.5 installation on server running .net 2.0 and 4.0

I'm about to install .net 4.5 on a windows 2008 server with .net 2.0 and .net 4.0 already installed. I also have over 10 web forms applications running on iis. Microsoft said that the in-place installation of 4.5 over 4.0 is completely backwards compatible, but I still want to know if I should have any other concerns before I go ahead with the install. Is everything going to break? I'm so scared!
Be ready for the unexpected. You have several applications running in that server.
And see MSDN about that

WIX CustomAction.CA.dll not working in Windows XP machine

Can anyone know why WIX Customaction.dll not working with Windows XP with service pack 3?As i developed my .msi with Wix setup in Windows 8 machine with VS 2010 environment.And this is working fine and is calling my customaction.CA.dll.Where as when i tried to test the same msi in windows XP machine this not working? do i need to do any changes in the customAction.dll so that it will work in XP machine also?Please help me to solve this issue.
Thanks
You might be used .NET Framework 4.0 (CLR 4.0) in your custom action. It will not run in .NET Framework 4.0 or newer is not installed machine.
In your XP machine .NET Framework 4.0 may not be installed. So that you’re custom action is not running.
Use useLegacyV2RuntimeActivationPolicy property in your CustomAction.Config file and set all supported time version which you want to use (CLR 2.0 for .Net Framework 2.0 and 3.5, CLR 4.0 for .Net Framework 4.0 and 4.5)

Development for .NET 4.0 (Windows XP) with Visual Studio 2012

.NET 4.5 is an in-place-upgrade and therefore replaces .NET 4.0. Consequently when I install .NET 4.5 with Visual Studio 2012 I can no longer develop applications for .NET 4.0.
As .NET 4.5 is not supported under Windows XP, how can I maintain my existing .NET 4.0 applications which still have to run under Windows XP after I installed Visual Studio 2012?
Until now I could always devlop .NET applications for every version, even .NET 1.1, as long as VS2003 was installed. I don't have a problem with Microsoft not supporting .NET 4.5 on XP, I think it's allright to cut off old stuff.
But as we have still customers using Windows XP, we need to be able to create .NET 4.0 programs at the same time as .NET 4.5.
EDIT:
I just had my first incompatibility issue: I installed VS 2012 on a Windows Server 2012. I created a project targeting .NET 4.0. In blend 4.0 I create a copy of a control template of a checkbox. The generated template contains references on colors which are available only under .NET 4.5. The solution cannot be compiled any longer. However the same case works fine on my Windows 7 installation.
I assume that the installation of .NET 4.5 has replaced the control templates for my standard controls. Therefore I cannot create copies any longer.
Ironically, it seems Mono supports much of the .NET 4.5 functionality, and that it can be installed on Windows XP.
If your need C# 5.0's async and your client refuses to upgrade it's OS, this can be an option.
I have run into some serious issues developing .NET programs for 4.0 against computers with 4.5 installed. One issue, for instance, is that if you are doing WPF development and have a private setter on a property - if you're binding to that property with Mode=TwoWay, you will not get an exception if you're developing against .NET 4.5! You should get an exception and you will if you're in an environment with only .NET 4.0 installed (even though you're developing to target 4.0 in Visual Studio). Now obviously you should not have Mode=TwoWay and a private setter, but maybe you had originally intended for the property to be only OneWay. The point is that this is just one of many examples of issues that are simply swept under the rug by 4.5 and has caused me to go back to developing in Windows 7 with Visual Studio 2010 and .NET 4.0 for anything targeting .NET 4.0.
In the meantime I have found a great blog of Scot Hanselman which answers my concerns: http://www.hanselman.com/blog/NETVersioningAndMultiTargetingNET45IsAnInplaceUpgradeToNET40.aspx
.NET 4.5 is an in-place-upgrade and replaces the .NET 4.0 CLR, but it will still be possible to create .NET 4.0 applications with Visual Studio 2012.
EDIT: I now installed the final release of VS2012. My existing .NET 4.0 projects compile and run, no problems so far. The only drawback is, it doesn't support Windows Installer Projects any longer. You can switch forward and backward between VS2010 and VS2012.
BIG EDIT: We should wait until Microsoft announces the final decision, it's not clear yet, only conclusions.
But, I think that Microsoft won't drop support for XP and Vista that easy, it appears that the matter of decreasing support is just for speed-purposes to show it to the developers.
Also, if the it comes true and Microsoft Stopped the support for XP and Vista, then you have the virtual machine as an excellent choice!
Best wishes

Where I can download the REAL Full .Net Framework 4 Standalone Installer?

I found that links:
Microsoft .NET Framework 4 (Web Installer)
Microsoft .NET Framework 4 (Standalone Installer)
Microsoft .NET Framework 4 Client Profile (Standalone Installer)
Note that (2) the size is 48.0 MB and the (3) the size is 41.0 MB. It's not the REAL .Net 4 Full Standalone. :(
I want that installer in a usb pen drive because my app need of features of .Net 4 Full Framework (like MSBuild) and I will install in a enviroment without Internet access.
PS: I tested the (2) and really is the Client Profile with another name... :(
Actually, you already found the full .NET 4 SDK. Microsoft put in a lot of effort to decrease the size.
The Microsoft .NET Framework 4
redistributable package installs the
.NET Framework runtime and associated
files that are required to run and
develop applications to target the
.NET Framework 4.
Have a look at this hanselpost.
The prerequisites have changed since .NET 3.5 SP1, .NET 4.0 requires at least XP SP3, Windows 2003 SP2 or Vista SP1. .NET 3.5 could be installed on any version of these operating systems, including a 11 year old completely unpatched version of XP.
So the 3.5 installer also needs to be able to update a bunch of native Windows components.
Not having to include the Windows component updates and additions allowed for a significant size reduction. If that's an issue then you'll have to include the Windows service pack installers on your pen drive.