Multiple icons in executable in VS2010 - c#

I have Googled and found multiple ways of adding multiple icons into the executable, but they all seem to work for VS 2003-2005-2008, nothing for VS2010. I have not tried the Win32 resource with /win32res because I do not know how to use it (can't figure to get a good Google result for that either).
Any simple suggestion?

I've just created a simple tool to do exactly this without having to mess with .res files. It's a tiny utility which you can use as part of your Post-Build event and lets you add all icons files in a particular folder to your assembly. If we assume that you have a icons folder under your main project folder you can add the following post-build event:
C:\path\to\InsertIcons.exe $(TargetPath) $(ProjectDir)icons
A further description and a download can be found at http://einaregilsson.com/add-multiple-icons-to-a-dotnet-application/

This works for me:
http://www.codeproject.com/Tips/160885/How-to-Embed-Multiple-Icons-and-Color-Animated-Cur.aspx

If you're using visual studio 2012:
For C#.NET Here I found a good solution for this problem for c# projects as an example. But it only works in my C# projects
Create a new "Native Resource Template" from the File | New dialog box.
In project properties(project->application->resources) there is option to choose resource file (.res) rather than "Icon and manifest" which is selected by default (This option is visible only to C# projects!).
For VB.Net projects this link (Also mentioned here by Waldo) can be more helpful because in my visual 2012 there is no option to select/browse Native Resource Template(.res) files but you could manually change project definition file for vb.net project as described to compile project win a native win32 resource file:
Open your project file in notepad (*.vbProj) and add the following block:
<PropertyGroup>
<Win32Resource>assemblyWin32.res</Win32Resource>
</PropertyGroup>

The Code Project article explains how to create a "assemblyWin32.res" file.
https://www.codeproject.com/Tips/160885/%2fTips%2f160885%2fHow-to-Embed-Multiple-Icons-and-Color-Animated-Cur

Related

Trying to obtain the exe for a c# form Application, getting .dll file

i've already searched and seen almost all in the web and in the forum, but i can't deal with that.
What I'm trying to do is to obtain an installer and then an exe of my form application by using c# in visual studio 2019.
So, i've followed that tutorial:
https://www.youtube.com/watch?v=fehVTLNQorQ&ab_channel=FoxLearn
so i correctly obtain the setup file. Then, when i launch it, it installs and if i try to run it i get that error: "You're trying to open a file type system .dll"
What i'm doing wrong?
I also structured my main class as in that response:
Changing a source file to compile Main() method in a project, in VS c# console application
I also used that suggested setting (sorry for non english language but it's quite understandable):
Is there somebody that can help me? thanks a lot
Some things you may want to check:
If you have more than one project in your solution, make sure that the main project is marked as Start-up project. On the solution explorer, right- click on the main project and select "Set as start-up project".
If you only have one project in your solution, check that no .exe is being produced in the corresponding bin folder. If it is, go to your project properties, inside Debug, and make sure that the option "Start project" is selected. You can also try to select the option "Start external program" and browse to the .exe in your bin folder (although the result should be the same).
If no .exe is produced, you may want to have a look at this post. It is similar to you problem I think but the other way round. I looks that the UseAppHost should be True for your case
You have to choose "Publish Items" and not "Primary Output" when you add a "Project Output" in "Application Folder" for .Net Core 3.1 in the setup project created by Visual Studio Installer Projects Extension.
# Alessio Orlando.
Based on my test, there is a different step between adding different project to the installer.
For WPF App(.NET Framework) project and Windows Forms App(.NET Framework) project: You could choose Primary output when you add a "Project output" in "Application Folder" in the setup project.
For WPF Application(.NET Core) project and Windows Forms App: As gigiabbrescia said, you have to choose Publish Items when you add a "Project Output" in "Application Folder" in the setup project.
Finally, there will be an .exe file in your installation directory after installing your Setup (Like the picture below). And you could click on your .exe file to run the program.

Localizing Xamarin Forms

I am trying to localize a Xamarin Forms app. I followed all the steps included here: https://developer.xamarin.com/guides/xamarin-forms/localization/
However, in the Android Emulator, after changing the default language, the strings do not get displayed, they remain the default language. On the device the app doesn't even launch.
Steps taken so far:
1) tried breakpoint (BP) in the main launcher, it skipped the BP and entered the main page
2) tried BP on the Localize class, it doesn't reach it
3) tried BP on the Device.OS check, skips it.
The resource files in Visual Studio are the following:
AppResources.resx
AppResources.fr.resx
AppResources.es.resx
Anyone ever succeeded localizing a Xamarin Forms app before ? I need some assistance with this as Visual Studio does not raise any exception ...
UPDATE 1 :
The resource files in Visual Studio are the following:
AppResources.resx
AppResources.fr_FR.resx
AppResources.es_ES.resx
UPDATE 2:
After recent suggestions and modifications I have the following exception: Markup extension not found.
This is disturbing as the markup extension class is there.
Doesn't work in DEBUG mode (Android only)
If the translated strings are working in your RELEASE Android builds
but not while debugging, right-click on the Android Project and select
Options > Build > Android Build and ensure that the Fast assembly
deployment is NOT ticked. This option causes problems with loading
resources and should not be used if you are testing localized apps.
SOLVED:
The problem was in the declaration of the extension. In a PCL project, the following took place:
a) the TranslateExtension class is located in a subfolder named Pages
b) initial declaration was
xmlns:languages="clr-namespace:MyApp;assembly=MyApp"
c) the following declaration solved the problem:
xmlns:languages="clr-namespace:MyApp.Pages;assembly=MyApp"
along with language code naming conventions of the .resx files as mentioned above
2021 UPDATE
All the current answers are not valid anymore! You need to add resources. Right click your xamarin forms project (Not xamarin android or ios) => Go to project properties ==> Resources ==> Add Resource.
This will create a "Properties" Folder and a resources.resx file which you can delete if you want to.
Then follow the official microsoft documentation by creating a AppResources.resx and other language files (such as AppResources.ar.resx file for arabic). All these files MUST BE in the properties folder.
Then, in your XAML page, declare the namespace as:
xmlns:res="clr-namespace:YourProject.Properties"
Then simply use:
<Label Text="{x:Static res:AppResources.Address}" >
This will use the corresponding Language files depending on what language the device is using. If the language is not supported it will use the defulat file (AppResources.res)
FIUH!!! Wasted one hour to solve this!!!

Could not load file or assembly itextsharp

I had build setup file from my winform application.
Then I installed it to my other computer, everything was working normally however when I clicked the SaveToPDF button which saves the gridview to pdf file
I encountered with this error :
Could not load file or assembly itextsharp, Version = 4.1.6.15 , Culture=neutral, PublicKey Token=8354ae6d2174ddca'
or one of its dependencies. The system cannot find the file specified.
If I run application from visual studio everything works pretty good.
Therefore while building the setup File iTextSharp content may be lost or while installing from setup iTextSharp content lost.
I'm stuck with this problem and dont know how to fix.
Any help would be appreciated.
Right-click on iTextSharp and select Properties. Set "Copy Local" to True.
Also I'd recommend using NuGet for package management. If setting Copy Local doesn't work or if it's already set to true, remove the reference and using Package Manager Console enter this:
Install-Package iTextSharp
UPDATE:
I tried with the InstallShield 2015 trial. Here's my experience. I'm guessing it's pertinent to your problem:
I tried a Basic MSI project and in Application File I pointed the primary output of the project using iTextSharp assembly. When I built the project I got an error "-6213 - Internal Build Error" Apparently it's a known issue with the .NET projects. Here is their article suggesting a workaround: https://flexeracommunity.force.com/customer/articles/en_US/ERRDOC/Q109089
The suggestion is turning off Dependency Scanning at build. I did that and the project compiled fine. But when I installed it only the exe for the application was deployed and iTextSharp wasn't. So this may be your case. Do you recall disabling scanning dependencies?
I removed the Project Output and added the desired files manually. This time it gave another internal error but fixed it with their suggestion (replacing ISWIScanners.dll with a new one they provide and rebuild). This time I could get all the files I wanted deployed but of course it's not ideal.
I'd suggest adding the files manually and applying the workaround. Alternatively, you can give Wix (http://wixtoolset.org) a go - a free and open-source installer. I haven't used it myself but heard it on DotNetRocks podcast. It's free so it might be worth a shot.
I hope this helps you.

How to run a C# project without the project file?

I have an C# source code of some software my company is using. This source code contains .xaml, .cs files, and one: App.config, packages.config. However there is no main project file that I can open in Visual Studio.
The original source code can not be found, and the programmer who made it has left the company long ago.
My question is - can I open such a project in C# somehow, without the main project file, so that I could make some changes and compile this application?
Just create a new WPF application project and add the existing files.
You can compile the code using the c# compiler csc (which you can find in the .NET Framework installation folder), or just create a new project in Visual studio and add the WPF files to it. The last option is the easiest one.

Problem compiling a .sln file with Visual C# 2010 Express

First thing when I try to run the application (I just downloaded it from CodeProject, right here), I get this error:
The name Resource does not exist in the current context
So when I double click the error it takes me to this code:
private Image mp_CodeImage_Class = Resource._class;
But there is a class called Resource but is in a file called Resource.Designer.cs, and this file is in a resource file called Resource.resx. When I check the properties of Resource.resx, Build Action is set to Embedded Resource and Custom Tool is set to PublicResXFileCodeGenerator. I'm just saying this details in case they help you find a solution because I know nothing about resources, just almost never use them. Hope you can help. Thanks.
For one, you can't open .sln files (which are VS solutions) in the express versions.
So what you will need to do is open the project file (.csproj), compile it, close that project and then copy the dll which you've just compiled into your project in which you want to use the control.
Hope this helps.

Categories