Why can't I make remote server (Windows Server 2012) show localized validation messages in my MVC (.NET 4.5) application? - asp.net-mvc

I have an MVC application that uses .NET 4.5. I debug it locally and then I publish it to a remote server. The local copy has validation messages in polish, but the remote one has them in english. I've added <globalization culture="pl-PL" uiCulture="pl-PL" /> hoping it will fix the issue, but outside of switching inputs/displays to localized date and float format, nothing changed.
After that I have manually set in IIS' site setting .NET Globalization both Culture and UI Culture to Polish (Poland) (pl-PL) (both of those were set to neutral for some reason) and made sure that Enable Client Based Culture is set to false. That didn't help either (even after restarting the site).
I've seen this problem mentioned a number of times on the internet, but with no working solutions. Nonetheless, one of the threads that I found about the problem suggested that .NET 4.5 is missing the proper language pack. This would seem like an easy problem to fix, yet I have found it impossible to install any language pack on my remote server.
The remote server is running on Windows Server 2012 (seems to be the english version). When I try to install .NET 4.5 language pack I get an error message saying that .NET 4.5 is already installed.
I also found language pack for .NET 4.5.1, but this one also greets me with an error. This time it's a different error though, it says that my system language is incompatible with the language pack's language and I need to either switch my OS to different language or install a language pack. I checked control panel if it is perhaps possible to switch the OS language, but as expected I can't really do that. As for language packs for Windows Server 2012, there is one, but it isn't available for mere mortals. It's only available for members of Microsoft Partner Network program.
Has anyone had the same problem and resolved it or can anyone give me some clues as to what I'm doing wrong here?

Since the fix was preformed by someone else, I cannot describe the exact process, but I'm reposting the general instructions as an answer.
Contrary to what I believed, it appears that it is possible to change the language of Windows Server 2012 in control panel, it's just the option wasn't very obvious to me. Switching this option makes the system do a big patch which might leave you with no .Net runtimes (and possibly other libraries, system tools). Although you might be forced to reinstall those, thankfully you should be able to do so in the language of your choice. When I have time to test it further, I'll post more info as an answer.
For now, if you have a similar problem,
Try going to "Control panel"
Open "Clock, Language, and Region" section
And then the "Language" subsection
Within this section make sure the language, that you want your .Net (and validation messages) to be in, is there.
If it's not, just add it and follow to the next step:
Click on the "options" hyperlink(like) button (on the right of your language row)
Wait for the "Windows display language" section to load (previously I didn't bother to do so and missed the next option as a result)
Pick the "Download and install language pack" option and follow with the installation (it might take a while)
After doing this, it should be possible to install the correct language pack for your .Net.

Related

Why is my app not using scaffolded Identity pages?

I have an app where I wish to focus on some Identity function enhancements, e.g. password generation etc. I have used "Add scaffolded item->Identity", and each Identity page seems complete and fine.
Yet when I put breakpoints e.g. in the ctor of Login.cshtml.cs, they are not hit, as if the compiled Identity pages are still running the show.
What have I missed in scaffolding out the pages?
Please consider the followings:
Make sure that VS not switched to Release mode (instead of Debug
mode)
If possible, run your VS as the admin, check it. Maybe you could try
to change the platform target(Any CPU, X86, X64).
To make sure that the symbols are loaded for your app, I think you
would get more information from the Output window, see Specify symbol (.pdb) and source files in the Visual Studio debugger (C#, C++, Visual Basic, F#) and PDB Files: What Every Developer Must Know .
Make sure that it has the same framework version when you use the
attach process, see this.

List & Label web report designer cross browser compatibility

I'm planning to use list & label as a reporting tool for my MVC Web Application, I downloaded the trial version and the sample code was really helpful.
I'm almost settled on using this as my app's reporting tool but I'm thinking twice on their web app report designer tool, because I needed to install the chrome extension before I can use it.
I'm using version LL v.20
So my questions are:
Is the chrome extension really needed for the designer to work? I'm thinking that if my app goes live, will I require my clients to install this plugin first?
Will the designer have issues on other browser? So far I haven't seen extensions/plugins for IE (only Fireforx, Safari, Opera, Chrome).
PS. If all else fail, can you suggest an alternative for this? The reporting tool that I need is web-based and allows end-users to edit the reports. Thanks!
1) Yes, you need to install the plugin on the client side.
2) For IE, there's a Designer ActiveX. Simply open your existing app in IE, you should be offered to install the OCX right away.
As to your general concerns:
We plan to replace the plugins with a client-side application that can be one-time installed with a couple of clicks in LL21. The reasoning is the step-by-step deprecation of plugins by most browser vendors. Changing between the plugins and the new designer app will be quite easy. The new designer will also support previewing at design time. Depending on when you plan to ship your application it may well be worth the wait till October.
I have tried List and Label Web Designer and found that installing additional application for all users is not a good idea. Will look for another solutions, may be FastReport.Net. That online designer is realy online and can work not only on Windows.

Scite4autohotkey installer gives me no features

When I use the installer from the author's website, I end up with a program that seems to have no support for autohotkey editing, no syntax hiliting, (not even a language to deal with .ahk files), no ahk specific tools in the toolbar, debuger support, help file, and so on. In fact, the only thing I see is a changed 'About...' in the Help menu.
Is there some setup I'm missing, or is the current version broken?
This is an old question but after a longer period there has been an update.
The latest version can be found here.

How do I get my Installer Application to behave correctly with Windows?

I have made a simple installer application in Delphi, nothing fancy. Basically I include files into the Exe, and then extract them to a user specified path.
I stumbled across a problem however, and I have noticed this works with ANY Windows Executable, it does not matter if it is an installer or not.
If an Exe is named, or contains the following words in the filename, "Setup", "Build", "Install" and maybe others, then.. whenever the Application is run and closed, Windows pops up a Product Compatibility Assistant dialog, saying the Application may not have installed correctly.
This is a problem, as even though the Files from my installer have actually extracted, and in my eyes the installer has done its job, Windows is complaining about it.
The only idea I have regarding this, is that Windows must check the filename of the Applications when executed, and in this case has identified it as an Installer. Windows must of then set a flag or something on the System, my Installer must then update this flag to say that the installation was a success?
Windows does not complain about this when debugging from the IDE, so it cannot be code related, it must be the OS - this only happens when launching the Application from Windows, not Delphi.
You can try this easily, either create an Application or rename one as Setup.exe, Run it and then close it - wait a few seconds and the Product Compatibility Assistant Dialog will show.
I don't know where to start investigating how to stop this dialog, or where a setting may be to tell Windows the Installer was completed correctly.
Appreciate your thoughts and solutions thanks.
If I recall correctly, this happens when your install app does not include an application manifest. When UAC was introduced, MS introduced a heuristic detection for installers and shows the UAC elevation dialog. The heuristic checks for names like setup.exe, install.exe. The simple solution is to include an application manifest. If it is an installer you probably want to use the requireAdministrator setting.
The feature is known as Installer Detection and is discussed here.
For what it is worth, I would always build an installer with a dedicated install tool like InnoSetup for example.
As David pointed out, MS uses some fuzzy logic to try to guess if the program is an installer. I wouldn't rely on this, as this is only for supporting legacy installer applications.
All new applications should have a manifest file, specifying whether it requires elevated privileges.
If an application has a manifest file that includes the requestedExecutionLevel directive, then Windows does not attempt Installer Detection.
Any program that is detected as an installer program but does not add a registry entry to the Add Remove Programs section of the registry (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall) will get the message "This program might not have installed correctly".

How to force .NET4 & it's tools to use English for exceptions and other messages

I would like for my Win7-x64 dev box to remain in the current locale (pl-PL), but at the same time for whole .NET tools to run in English locale.
I previous releases this could be achieved by not installing a language pack add-on that came up in windows update. This time it did sneak up and I cannot find it in windows update history and appwiz.cpl, or it is installed differently.
Can you tell how to uninstall other than English locales for .NET installation or setup .NET & it's tools to use only English locale?
What I'm NOT interested in (and there are already such answers on SO):
How to setup current process or application locale, within this application (aka. CurrentCulture ). I do want applications I release to use user's current locale.
Change current thread locale. For the same reason as above.
PS. I would like to avoid re-installation of .NET/VS2010 if possible ;)
As far as I know there is no way to get rid of localized messages when you have "localized" version of Windows. Possibly, Windows 7 Ultimate (I am not sure about other versions) should allow changing the whole UI language, and it should do the trick (as this is what CLR uses to determine current locale).
Uninstall the Polish language pack:
Start - Control Panel - Programs and Functions - Microsoft .NET Framework (4 Client Profile) Language Pack PLU - Uninstall
You may need to repeat the uninstallation for each version of .NET Framework that you find there.
For web applications you can put this in the web.config
<configuration>
<system.web>
<globalization uiCulture="en-US" />

Resources