I have developed some software with no database. I want to create a .exe of my .Net project so I can give only the .exe file to users to use the software.
Unfortunat
Something like ILMerge perhaps?
There's even a GUI
Note: I haven't actually tried either of them.
A .exe is automatically created when you build your project in Visual Studio. It can be found in /bin/debug or /bin/Release folder in your project. However, you should provide the whole Debug or Release folder to your end user, if that folder contains other files besides your .exe.
PS: It is recommended that you provide only the "release" version of your .exe, instead of the "debug".
When you run your project in Visual Studio an exe of the application is created in the debug folder you can give that exe to your friends to test your application. Otherwise create a setup project in your application in the visual studio. Help is available on MSDN about setup project. The setup project will create a setup of your application like other softwares available in the market, and you can give that setup to your friends to use it.
Others have addressed the .exe question, so on a general development point not you might want to review your code and identify functions/classes that you can re-use in future developments.
You can then extract these into a separate .DLL and still provide your users with the software but development of the next application will be a bit easier and any improvements to the functions can be easily adopted in both applications...
There is the Costura.Fody add on, and this compiles everything into a single exe that doesn't require installation. It can be installed via nuget, however the latest version of nuget will prevent the FodyWeavers.xml file from being created, so this needs to be done manually.
Create a Setup Project (look up in msdn), package your project output files within the installer. Visual studio creates an installer and bootstrapped exe file, you can use either the exe or the msi file to run your application.