Why will my project not debug? - windows

I just downloaded Microsoft Visual C++ and am trying to run a simple hello world. However, when I go to debug, I get the error "Unable to start program 'C:\Users\Sterling\Documents\Visual Studio2010\Projects\test\Debug\test.dll'"
And thats it. It doesn't say WHY it can't start it...it just says it can't. Has anyone experienced this? And know an answer? I'm thinking about just reinstalling it, but was hoping to find an easy solution first. Is there a separate program I need to start .dll files? I just got this laptop about a week ago so I may not have it yet. This is on Windows 7. Thank you for any help.

You have built your project as a DLL. You cannot run DLLs standalone. If you meant to build it as a program (.EXE), change the Project Settings.
Right click Project in Solution Explorer, click Properties - edit Configuration Properties -> General -> Configuration Type to be "Application (.exe)".
If you want to build (and run) your project as a DLL, you will have to also write a program that uses it in order to to test it. You could do this as a separate 'TestDll' EXe project in the same solution as your existing DLL.

Related

How to force Visual Studio to execute .exe instead of .dll?

My solution has 2 projects, both of them are .dlls. These are copied over for my .exe to work. After clicking F5 on my project, I want an .exe to run. Instead, what I get is:
Even if in Project Properties -> Configuration Properties -> Debugging -> Command, my command is correct...
I'm sure it's working for both configurations: release and debug. Projects are building fine, copying to correct directory fine as well. Are there any other properties that I missed?
(1) I agree with Hans Passant's suggestion. Please make sure that you really setup your .exe project as the start up project in your solution explorer window.
(2) Please check that which it really has .exe file in your project output folder. Maybe you set the wrong "Configuration Type" in your start up project.

VS2010 error : LNK1181 : cannot open input file xxxx.obj (only in debug mode)

I am using visual Studio 2010, trying to build a big solution having many VC++ projects converted from older Visual Studio builds.
The problem is, it gives me this LNK1181 for the 'root' project of the solution (the project on which all other projects are dependent) but only in DEBUG mode (win32). In release mode, it does not give me this error.
I noticed that this obj file is actually not created at all when in debug mode. Though the compiler doesn't give any error when it is building that cpp file.
What could be the problem? Is it related to those property manager sheets too somehow or something else?
The project is downloaded from our Source Control System directly, and works fine on other machines so there is something wrong on mine :(.
Click on solution.
goto Build menu and clean the solution and again build the solution hopefully this action sove your issue
You probably solved this a long time ago, but when I had this exact issue, removing the source files used to create the object from the project and then re-adding them as existing items fixed the issue. Of course, this doesn't change the fact that you're using project/solution files from your repo that other people are using without issue, which is odd.
For what it's worth, I had accidentally added *.obj files to the project, and so it was throwing this error.

Recover a .CS class file after crash

I was working on a class in visual studio 2010 when suddenly my computer crashes. after I restart the computer. I start Visual studio and I find that class to be completely empty.
it contained more than 1000 lines of codes before the class.
is there anyway i can recover that file?
Help please because I don't have another copy of it (Stupid of me)
If you cannot find the source code file, try using Reflector to decompile the most recently built dll you have containing that class. It won't give you your complete source, but at least will give you something to start with.
Note: Reflector is no longer free; if that matters, try dotPeek from JetBrains instead.
Also, look into using a source code control system. This will let you 'commit' versions of your code to a repository, so you'll have a copy in case something like this happens in the future.
Subversion, Git, and Mercurial are popular ones; In my opinion, Subversion would be the easiest to start out with, especially with TortoiseSVN (OS integration) and AnkhSVN (Visual Studio integration). If you don't want to worry about setting up a repository/server, look into a hosted solution, like Beanstalk, which offers Subversion and Git and lets you try it out with a free, limited account.
Good luck - I hope you are able to recover your source!
Something which worked for me was back-up.
BTW I was trying to recover a VS2013 file on a Windows 8 machine.
Try to check in below location in your system.
C:\Users\username\My Documents\Visual Studio \Backup Files\ProjectFolder
I found an original file with original-date.filename.cs name and a recovered-date.filename.cs files.
The original was the one needed.
Deleted the one in project, added the original file and renamed it to file.cs. Tried building and debugging and it gave the expected results.
Also just want to add one more thing...
In my case i had an aspx page with its respective .cs and designer.cs
The .cs file got corrupted and I did build on project, with the designer.cs the project got build successfully and the dll got replaced. And when i tried to recover using reflector everything was in a state no return. :(
So don't build the project if you see any file got corrupted.
in visual studio 2019 I find the file in a files with TMP extension
FileName.cs~xxxxxxxx.TMP
This happened to me a few times as well when Visual Studio was crashed or System was shutdown unexpectedly.You can recover these corrupted file using Recuva. It dose not recover the file every time but in most of the cases it's work perfectly.
Below are the settings which you need to configure before recovery.
Start Recuva. Enter Advanced mode if the Wizard launches.
Click Options.
In the Options dialog box, click the Actions tab.
Click Scan for non-deleted files, and then click OK.
Run the Recuva scan as normal. Non-deleted files are indicated with a green double-circle status icon.
Hopefully, you will find your corrupted file in recovered files as it recover multiple versions for that file.
Very useful question. I got issue of file crash on sudden shutdown of my PC. recovered file using "Recuva"(download link: https://filehippo.com/download_recuva/) software. Scan for non-deleted files was helpful.
I got help from: https://www.samnoble.co.uk/2014/11/30/visual-studio-crashes-and-a-corrupted-cs-file/
Well, that happen recently for me and I did get my file back this way.
1. Find the project DLLs in the bin folder. Example MySolution.dll
2. Download and Install .Net Reflector from https://www.red-gate.com/products/dotnet-development/reflector/trial/thank-you
3. Open the .Net Reflector app and click the open folder icon then move to your bin directory and select MySolution.dll file
4. Then traverse and expand through your namespaces and classes to look into your codes.
5. Have fun!

nunit locking dll

I have been using nunit with visual studio 2010 on a windows 7 64-bit pc.
I am able to open the nunit gui and run my unit tests. If I then change one of the unit tests and try to rebuild, I am getting a file locking error as follows -
Error 1 Unable to copy file "obj\Debug\myProject.Tests.dll" to
"bin\Debug\myProject.Tests.dll". The process cannot access the file
'bin\Debug\myProject.Tests.dll' because it is being used by another
process. myProject.Tests
I have used process explorer to verify that it is the nunit-agent.exe that is locking the dll.
I have noticed via tools > test assemblies that the nunit.exe is running under clr version Net 2.0 and nunit-agent.exe is running under clr version Net 4.0. could that have something to do with the problem? If so, how can I fix it? If not, does anyone have any idea what else may be going on?
Thanks for any thoughts.
I think this has to do with the placement of my test project. Initially, I was putting the nunit test project in a seperate directory from my dll files. I was thinking that I would keep all of my test projects in one centralized location.
I them moved my test project into the same location as my test dlls under my visual studio projects. After that, it seems to be working correctly.
I think this has to do the shadow copy. I read in the nunit group on google that the .net framework will only shadow copy assemblies in the application base or it's subdirectories.
This led me to try creating the nunit test project within my application base and that seemed to work.
Hope that makes sense.
Thanks
I also faced the exact issue, however czuroski's answer did not work for me (although I think that we are in effect talking about the same thing).
What did work for me was to ensure that in NUnit I set the Project Path and Project Base were pointing to the same root application folder under Project -> Edit. I re-saved my existing Nunit project to the same directory as my VS sln file.
Another thing to check is to make sure that Shadow Copy is enabled in Nunit -> Tools -> Settings -> TestLoader -> Advanced -> Enable Shadow Copy
try this, Tools > Settings > Test Loader > Assembly Isolation > Default Process Model > Run tests in a separate process per Assembly.

Visual Studio 2010 Debugger jumps around

I have a simple C# Winforms application. It isn't multi-threaded (yet). When I debug it and step through the code at work, it debugs just as expected with the debug cursor moving line by line. But when I try doing this at my home computer, it behaves very erratic. The cursor will randomly jump to an unrelated line of code in the middle of another method that hasn't even been called yet etc.
The differences are:
At work I use VS2010 Professional, at home I have VS2010 Ultimate
At work, I use Win XP, at home I use Win 7 Ultimate
At work, its a dual core Athlon, at home a quad core Phenom II
Your symbols file might not match your source. Try deleteing your /bin folder and rebuilding the solution.
Make sure that the project configuration is set on Debug (not on Release!):
If you use other Projects too, make sure to go to Build => Batch Build and check if you build those other projects that you run as well
I'm not sure which one will work for you but you should either tick the Build option or by Modifying Solution Config from Release to build,also you might need to delete your Bin Folder and Build from scratch.Then eiter click on build or do it from Solution Explorer. As shown you can Build other parts of the project and Debugger works rationally again.

Resources