I'm building a UWP application and I'm getting a build error when the number of resources is 200+ with Visual Studio Community 2017 Version 15.9.4. If I reduce the number of resources below 200 then it builds just fine. Is this a limitation for the Community version? I intend to submit the app to the Microsoft Store and unless I limit the markets the app will fail because it doesn't support all of the required language codes which are included as resource files.
I've tried building a project from scratch...steps to reproduce detailed below. I've reduced the resource list but now I'm faced with denying my app to some markets because I believe the Microsoft Store won't accept my app for that market unless it supports the language for that market.
Start Microsoft Visual Studio Community 2017 Version 15.9.4 with Microsoft.NETCore.UniversalWindowsPlatform v6.2.3 NuGet package (and no other NuGet packages) if that makes any difference.
Click and Select File=>New=>Project from main menu.
Select Windows Universal=>Blank App (Universal Windows) then click OK.
Select Target version 17763 and Min version 16299 then Click OK (but the same error occurs with other version settings).
Select Project=>Store=>Create App Packages.
Select "I want to create packages for sideloading" (but the same error occurs with a Store App) then click Next.
Click Create to accept the defaults.
Click OK to close the popup indicating that the package was created.
Click Build Solution or press F6.
Right click on the app project and select New Folder then rename it Localization.
Right-click on the Localization folder and select New Folder.
Name the folder using one of the Supported Language Codes listed on https://learn.microsoft.com/en-us/windows/uwp/publish/supported-languages.
Right click on the new folder and select Add=>New Item.
Select XAML=>Resources File (.resw) then click Add.
Enter any value, for example String1, for the String1 Name and save it.
Create additional sub folders for all supported language codes and copy the same resource file into those folders.
Add those resource files to the project.
Try to build the project.
Result:
Error Validation error. error C00CE014: App manifest validation error: The app manifest must be valid as per schema: Line 223, Column 6, Reason: Element '{http://schemas.microsoft.com/appx/manifest/foundation/windows10}Resource' is unexpected according to content model of parent element '{http://schemas.microsoft.com/appx/manifest/foundation/windows10}Resources'. App1 C:\Users\Steve\Documents\Visual Studio 2017\Projects\UWP\App1\App1\bin\x86\Debug\AppxManifest.xml
Note: Line 223 is the line where the 200th resource line: <Resource Language="LT" /> is located. However, the error goes away if Resources.resw files are removed from the project until there are 202 or less localization resources in the project. This error is preventing my UWP applications from being available to all supported markets.
Related
I've downloaded a UWP solution that consists of 8 projects. Upon building in VS 2017 I get the following error each of the projects in the solution:
"The referenced component 'Microsoft.UI.Xaml.Markup' could not be found."
Sure enough, when I look under the "References" node for each project in the Solution Explorer window "Microsoft.UI.Xaml.Markup" is listed but with an exclamation mark next to it. If I click on it and look at its properties in the properties window there is nothing listed in the "Path" field (and Copy Local is set to false, if that's of interest to anyone).
I've tried right clicking on it and selecting "Remove". I then use another UWP app that builds just fine (that's also referencing "Microsoft.UI.Xaml.Markup") to locate the path of "Microsoft.UI.Xaml.Markup". In the project that's giving the error I right-click "References" and select "Add References...". I browse to the location of "Microsoft.UI.Xaml.Markup" and add it to the project. It shows up in the "References" node but again displays an exclamation mark and nothing in the Path field. I can't seem to add it to any of the projects in the downloaded solution. What am I doing wrong?
For what it is worth I had this issue and changed the target UWP version in the project properties dialog and this resolved the issue. So it does seem to be related to the Windows 10 version you are targeting vs the Windows 10 SDKs you have installed.
I have a C#/WPF project built on Visual Studio 2013 Professional for work.
This project was originally built on a Windows 10 platform, but has been moved to another computer running Windows 7.
I have found that the project can be successfully built when the program first opens, and I have chosen "clean solution" first. After any change is made, an error appears (Note that I have removed the company name from the line):
"CSC : error CS1583: 'd:[Removed company+project name]\obj\Debug\CSCB4E1285F65D54791A82C162F265D41AD.TMP' is not a valid Win32 resource file".
I have searched for solutions and a common thing suggested is that there may be problems with an .ico files. I completely removed my icon file from the project and it did not resolve the error.
The Microsoft information on this error is:
"This error occurs when you specify a filename with the /win32res compiler option that is not a valid or correctly formatted Win32 resource file. In Visual Studio, the filename is specified in the Application pane of the Project Designer." I've looked in the Application pane and I could not find any /win32res options...
The building process itself is prone to hanging - Stopping at different points. I stop, clean solution, and rebuild which often gets a different result.
What could I do to better diagnose the error? Are there any tools that allow me to see where something went wrong?
Is there something that I have overlooked?
Any input would be great.
In building an installer for my application,i repeatedly getting an error:
Error -3204: Cannot extract icon with index 0 from file C:\Users\....
A quick google search got me here (where the issue isn't resolved) and following step by step procedure here enabled me to add C:\Windows\system32\shell32.dll everytime i build my project, then selecting icon:2 .A setup.exe is created despite an error
and installs app for me but with no trace in Add/Remove programs in Control Panel.
How to get that icon in Add/Remove Add/Remove programs in Control Panel.
EDIT: if there's any other software for windows installer for VS2013 such as SetupProject with the previous releases of VS 2xxx please suggest me
You should change the method of creating the setup file. See the link below :
Clike Here
Update :
Here are two other setup applications which can make setup of your application.
QSetup
and Centurion Setup
You can try them to make setup for your application.
<ISProductFolder>\redist\Language Independent\OS Independent\setupicon.ico
When I used the file path above in the project assistant --> application shortcuts section --> use alternate shortcut icon, the basic icon showed up and allowed me to select the icon. Now my project builds without this error. (the icon looks bad but it works.....)
IconShow
I'm trying to use Install Shield LE to package an distribute a winforms app. This is working well and I even have .net 4.5 redistributable packaged in the setup.exe. The issue I am having is I am now creating a version 1.4 of my app, and I want it to successfully uninstall the old versions (1.0 thru 1.3) and install the new. So far I haven't been successful; every time I run the new setup.exe I get a warning saying that the current version has to be uninstalled first using programs and features in control panel.
Does anyone have a decent tutorial or some guidance that could help me improve my customer experience by having my new version replace the old?
Many thanks,
Jason.
In the visual studios project explorer, under your installshield project are a number of page entries. One is called 'General Information' (Under 'Organize Your Setup'), and includes a few sections. The first section is called, 'General' and the first few fields are "Product Name", 'Product Version", "Product Code", and "Upgrade Code".
To create a new installer (setup.exe) that will UPGRADE a current installation, if it exists, there are a few things to do. The key in the way it knows to upgrade a current installation is the "Upgrade Code". If this code is the same as the Upgrade Code defined in the original installation (from the original setup.exe), it will update your installation.
To create an update setup.exe file:
Open the "General Information" page.
In the General section (Top section):
Change the product version to your new version number.
Change the "Product Code" (NOT THE UPGRADE CODE!).
You can do this by clicking the
{...} icon at the end of the Product Code field.
Finally, create a new upgrade path.
Open the "Upgrade Path" page under the 'Organize Your Setup' section.
Right click on "Upgrade Paths" in the tree view on the far left, and select "New Upgrade Path...". This will create a new entry in the tree view. Name it whatever you like.
Click on the entry you just created, to bring up the properties in the window on the right. The first field is "Upgrade Code". This code needs be the same as the code used in the prior installation. If it is different, your installation will install another instance of your program (if the product code is also the same, you would get the "Uninstall other program first" message).
Fortunately, the "Upgrade Code" of your original setup.exe is easy to get. In the Upgrade Code field, there is an ... icon. Clicking this will open up a file browser. Set it to show "All files" as its default is msi files only.
Navigate to the setup.exe file used in the original installation and select it. It will populate some fields for you, including the original Upgrade Code. You will notice it also sets max and min version numbers to the version number of the original setup.exe. Set the max version number to the version number of your new setup.exe that you defined in the General section of the General Information page.
You're set! Build the solution, and the new setup.exe will upgrade a previous installation (with the same Upgrade Code).
Check out this page. It covers the same material, bit with pictures!
http://syncor.blogspot.com/2013/03/doing-upgrades-with-installshield-le.html
Background: I have a winforms app written in C# that converts xlsx files to csv by calling a 2nd entirely seperate application ConvertExcelTo.Exe from the command line. I'm using the Build Publishing tool to compile a setup / install file out of the solution for the winforms app.
Problem: The Windows installer completes without any errors on my computer with Windows 7 Ultimate, Visual Studio 2010 Premium, and Framework 3.5 but the user operating on Windows XP SP3 without VS gets the following installation error message:
This application requires microsoft.visualstudio.hostingprocess.utilites.sync
version 9.0.0.0 be installed in the Global Assembly Cache (GAC) first.
Under Prerequisites I have selected:
Windows Installer 3.1
.Net Framework 3.5
Download prerequisites from the component vendor's website
Under Application Files I have:
Included Files: CCP_Utility.exe, CCP_Utility.exe.config, CCP_Utility.exe.manifest, ConvertExcelTo.exe, ExcelConversion.dll, Icon1.ico, Microsoft.Office.Interop.Excel.dll, Microsoft.Vbe.Interop.dll, office.dll
Excluded Files: CCP_Utility.vshost.exe, CCP_Utility.pdb
Prerequisite Files: Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll, stdole.dll
I've tried:
Adding the existing items ConvertExcelTo.exe and ExcelConversion.dll to the Project Solution and deleting the References to these files externally
Excluding ConvertExcelTo.vshost.exe from the Application's Files under the Build Pubisher and deleting the file from the Solution
Installing the Windows 4.5 SDK for XP SP3 & Vista here: http://download.microsoft.com/download/7/c/4/7c426dfc-46e2-4ded-bab4-3b33600ad7d1/msi45sdk.msi
Question:
What does the user have to download to get the installer to complete without errors?
What do I need to edit in the Publisher so that other users don't get this error?
Should I set any of the prerequisite files to be included files?
Thanks for looking! :)
I solved this issue by adding a Setup and Deployment project to my existing project to create an installer where I could select "Global Assembly Cache Folder" by right clicking "File System on Target Machine"
In the existing project, Go to File Menu > click Add > New Project > now the “Add New Project” dialog will appear.
Select the “Other Project Types” and click “Setup and Deployment” projects,Choose “Setup Project”give name project name in name text box finally click OK.
New project appear in solution explorer,for eg., you have give the name “myEXE” file will be displays with given name.
Right click the myEXE > go View
You can see the “File System on Target Machine” under 3 folders:
Application Folder, User’s Desktop, & User’s Program Menu. Right click the "File System on Target Machine" and select "Global Assembly Cache Folder"
Select Application Folder and right click Add>Project Output>select Primary output
Select User’s Desktop richt click on the second window>click create new shortcut>select output file from Application folder>change the file name from primary output name to myEXE
8.Finally Build the new project After successfully Build the project myEXE(Setup) will be appear in Application Debug or Release folder(depend upon the properties settings)
I hope this helps others as well :)