I have a web application that uses IIS, but when I try to debug it VS just locks up and gives me the hour glass cursor icon. No browser window opens, nor does an instance pop up in the Task Manager. VS says its Running / not "Not Responding", but I cannot interact with the IDE. Can't Ctrl-Break to stop or anything.
I was able to run it before, and I'm not aware of any system or IIS changes that could cause this. I've disabled source control and I've tried launching the app in both Chrome and IE but it still behaves the exact same way as described above.
Has anyone else encountered this? The only threads I could find just describe general slowness in the IDE but otherwise its functional. The recommended fix was to disable the source control functionality, which as I said I already tried.
I should note that I don't seem to have an issue running & debugging winforms applications. I also just created a web application and was able to launch it in Chrome and get to the homepage. Also, it doesn't make a difference if I have a breakpoint set or not.
This solution has 4 different projects. If I set a different project as the Startup Project, it does run and launches the browser but it just gives me a 'file explorer' sort of view where it just lists the files in that project's directly which is obviously not what I want.
Edit; If I manually open a browser tab, try to navigate to http://localhost/myApplication, VS pops up and asks if I want to attach process w3wp.exe to IIS APPPOOL\myAppPool. If I attach, it opens a new tab in Chrome and my application runs. But unless I do these 2 steps, it does not run.
Related
I worked on a Console Application with a friend today. Is it possible to share the default console during a Live Share session? What I mean is that we had to compile and run our program manually through the default Windows Terminal to see output(which wasn't the best idea, there was a ton of empty lines displayed every time we would input anything), and debugging was impossible because we just couldn't see the console (only the host could).
According to the docs, it's possible to share the terminal in both VS Code and Visual Studio, but I don't think there's a way to share the console that comes up when you debug a console app. The solution I see is simply sharing a terminal, running your app in it manually and if you want debugging, you can try attaching the VS debugger to the console app's process after you start it manually by following this guide.
If I create a new console application (.NET Framework 4.5.2) and enter the following lines as the complete contents of the Main method:
Console.WriteLine("A");
Console.ReadLine();
When I hit run (F5), VS enters debugging mode and shows the memory usage graph but does not show any console window. This same problem is seen on every console application I try to use in VS2017. While not universally the case, in the app I described above, running this by double-clicking the .exe file does produce a console window.
Does anyone know how to get VS2017 to show a console window?
This appears to be to do with 32-bit applications.
Unticking the prefer 32-bit option in the build options solves the problem.
Edit: Further investigation showed this to be a problem with an extension used within my company. Disabling this extension let my console windows appear again.
I recently downgraded IE from 11 to 8 due to IE 11 not having the ability to run as previous versions. After the downgrade, I suddenly was not able to debug a web app from Visual Studio 2010. While using IE 11, I was still able to hit breakpoints in the JavaScript code but now, none of my breakpoints are hit and instead when I navigate to the page where I think the error is, I get a pop up window titled Webpage Error with a message of "Do you want to debug this webpage? This webpage contains errors that might prevent it from displaying or working correctly. If you are not testing this webpage, click No." I've never seen this pop up appear while using IE 11 or the IE version before I upgraded to IE 11.
Is there an IIS setting that gets overridden by downgrading? I'm using IIS 7.5. How can I get back to seeing my breakpoints getting hit in VS2010?
Update:
In VS 2010, while in debugging mode, I clicked Debug > Attach to Process and noticed two processes for iexplorer.exe. On that is grayed out (which I'm assuming there is a debugger attached to) but has no title. And the other has a title that matches what I see in the actual IE window. Back in IE, when I see the error popup asking me if I want to debug this web page and I click yes, I get a new popup with the title of Visual Studio Just-In-Time Debugger with the message that includes "An unhandled exception .... occured in iexplorer.exe[4508]. This process ID matches that of the grayed out iexplorer process. Why would there be two iexplorer processes?
I have VS 2012 installed as well but not sure if that changes anything.
Thanks,
Going all the way back to IE8 is overkill-- use IE10 instead. The IE team removed the "emulation" features from the pre-release IE11 developer tools because the emulations were never very accurate; you should instead use VMs instead (see http://modern.ie)
All versions of IE since IE8 use two or more processes: One process is the Manager/Frame process and one or more processes represent the tab/content processes where your HTML and script run. You want your debugger to attach to the tab/content process, which is a child of the manager/frame process.
The "Do you want to debug" prompt is controlled by Tools > Internet Options > Advanced; see the 2 "Script debugger" checkboxes near the top of the list.
I have a console-based server and client application which talk to each other over a TCP socket on localhost (although eventually will be used on separate machines).
I see that if I manually launch the server target and then the client, XCode seems happy enough to run them both in separate debugger contexts, they connect and work just fine.
Ideally I'd like to set it up (via a scheme or pre-run step or something) such that I can one-click 'run' (or cmd-R) and both these contexts pop up and run happily.
So far my experiments with the post-run script (for the server) passing "$(BUILT_PRODUCTS_DIR)/cclient" to /bin/sh seems not to work, and this is less than ideal anyway because it wouldn't run in a debugger context anyway.
Is there a way i can easily set this up?
Thanks,
DaveM
EDIT: Added a screenshot of what I can achieve with several clicks, but would like to get to with one click/key-combo...
You can set up scripts and other actions in breakpoints.
Click on the left side of editor to create a breakpoint, and CMD+OPT+click on the breakpoint icon to edit its options.
Also, you can choose the 'Automatically continue after evaluation' option, for convenience.
For details, see Session 412 Debugging in Xcode from WWDC 2012 videos. This session just happened to demo debugging skills with Xcode in a client-server setting.
I love firebug for helping debug my web apps, as well as seeing how others have implemented there sites. However firebug hinders memory leak testing.
I've just found that FireFox can be launched in safemode which disables all addons, which is great for memory usage testing however once firefix is launched (either samemode or not) all subsequent firefox launches (they all appear in task manager as 1 firefox instance) will use the mode of the first one.
I'd like to leave one in same mode testing some apps for leaks and use another with firebug to develop.
I've tried making a copy of the FireFix.exe and even copying the whole firefox directory but it still launches as one application.
I could always use VirtualBox to create a full virtual PC for this testing but that seams like a large overhead.
Edit
I have just tried the -no-remote switch but it just comes up with "firefox is already running .... you must first close the existing Firefox process.... "
First close all your Firefox instances. With all instances closed, run firefox via the "Run..." dialog on windows, typing "firefox -p". It will open with the profile manager, where you can create multiple profiles with different configurations.
After creating your profiles, just run you "main" browser using "firefox -p" and select your "main" profile. To open another instance using a different profile, run Firefox using "firefox -no-remote -p" and it will prompt the profile manager again, so you can choose a different profile.