66

I have this problem where I open Visual Studio and the internal windows are scattered all over the place. None of them are docked; some that should be visible have become invisible and vice versa. I then have to spend ages getting the windows back where I like them.

It only seems to happen with some solutions and only appeared recently.

For the life of me I can't fix the problem. Has anyone else been through this?

BIBD
  • 15,107
  • 25
  • 85
  • 137
cbp
  • 25,252
  • 29
  • 125
  • 205
  • 4
    I sometimes get the same problem, but only when working with several instances of Visual Studio and, luckily, only in one of open instances. So I make sure that I close the messed up Studio first, and close the one that retains my settings last. So I have avoided the pain of restoring my settings. – Juozas Kontvainis May 28 '09 at 07:40
  • I tend to have this problem if I have 2 or more VS instances open and have them flipping back and forth between debug view. Eventually at some point one will suddenly undock every window. – CodingWithSpike Sep 27 '09 at 17:49

12 Answers12

70

Sounds like there is definitely a problem with Visual Studio retaining your settings between round-trips and possibly your Visual Studio settings profile in general.

The solution I'd recommend is firstly to reset all settings, secondly customize things to your personal preference and finally take a backup of those customized settings. The idea is that this settings backup file can be used later to automate a quick settings restore to a point you are happy with. The following steps show how to do this and hopefully should sort out even the most confused Visual Studio setting issues:

  1. Close down all instances of Visual Studio.

  2. Go to Start > Programs > Visual Studio 200X > Visual Studio Tools > and choose 'Visual Studio 200X Command Prompt'

  3. Run the sligthly less well known 'devenv.exe /ResetUserData' command. With this command you will lose all of your Visual Studio environment settings and customizations. Because of this, the /ResetUserData switch is not officially supported and Microsoft does not advertise it (the switch is not described in the help for devenv.exe you get when you type devenv.exe /? in a command prompt). Importantly, wait for the resulting devenv.exe process to disappear from Task Manager or even better Process Explorer.

  4. When the process disappears from Task Manager or Process Explorer, run 'devenv.exe /ResetSettings' which will restore the IDE's default settings and eventually start a single instance of Visual Studio.

  5. Now in Visual Studio choose 'Import and Export Settings...' near the bottom of the 'Tools' menu to start the Import and Export Settings Wizard.

  6. Choose 'Reset all settings' radio button and Next > Choose 'No, just reset settings, overwriting my current settings' and Next > Choose your personal 'Settings Collection' preference, I would choose Visual C# Development Settings here (Note: What you choose here has an effect on keyboard shortcuts etc. but you can always repeat this process until happy) and click Finish.

  7. When you get the message that 'Your settings were successfully reset to XXXXXX Development Settings.' click Close then spend a good bit of time adding any personal customizations to Visual Studio such as opening windows you always want open, customizing toolbars and adding any toolbar buttons etc.

  8. When you are finished with your personal customization and completely happy with your setup go again to Tools > 'Import and Export Settings...'

  9. Choose 'Export selected environment settings' radio button and Next > Tick 'All Settings' and Next > Choose a file name and directory and click Finish to store a backup of your current settings in a .vssettings file.

  10. In future if things go haywire again head back to Tools > 'Import and Export Settings...' and this time choose 'Import selected environment settings' radio button and Next > Choose 'No, just import new settings, overwriting my current settings' and Next > Either choose the name of your .vssettings file from the list (usually under the My Settings folder) or Browse.. to where you saved the file and Next > Tick 'All Settings' and click Finish.

  11. Importantly, close the single instance of Visual Studio. Any future instance you open should retain your latest customizations.

Peter McG
  • 18,857
  • 8
  • 45
  • 53
  • I've encountered regular crashes when setting the settings. After those crashes my 'vssettings' file can be corrupted. – CodingBarfield Dec 29 '10 at 08:18
  • 2
    Excellent solution, but you forgot one important, unclear step: when in step 10, restoring your settings, you _must close all open solutions and have one instance of VS open_. If you have a solution open, restoring settings has no effect to your window layout. – Abel Jan 28 '11 at 08:27
  • @Abel the last Visual Studio that closes wins and keeps it settings saved. – CodingBarfield Aug 09 '11 at 06:59
  • I followed these instructions and now, if anything, it's worse, all the toolbars that I had managed to get rid of have been reset, and I can't get rid of them again, they always come back now :( – Matt Nov 02 '11 at 23:33
  • 3
    This worked for me. Just be aware that you may also have to reinstall any extensions. – Preet Kukreti Jul 09 '12 at 02:06
  • 1
    This is why I love Windows 8. Since there is no start button, there is no single place where programs install their helper executables. So now I get to search for the visual studio command prompt. – argyle Mar 28 '13 at 02:30
  • This is also useful for it you are installing Visual Studio 2015 Update 3 (updater as opposed to full) and it will only show Update 2 – Paul Farry Jul 07 '16 at 01:34
  • This is still useful in Visual Studio 2017: for me it just restored code coloring for TypeScript files that were all black when other approaches had failed. One thing to note is NOT to execute the devenv commands from an admin VS command prompt, just use a normal one. They are by user so you are resetting them for the wrong user if your regular user isn't an admin. – Rich N Aug 03 '17 at 21:17
7

Visual Studio corrupts its settings with regular monotony (always has done, I've been suffering from this since the Visual C++ days, and it's still a bugbear in VS2013).

Often this seems to be totally at random, but it's highly probable after a crash.

It will also lose any changes to your settings if Visual Studio doesn't shut down cleanly - for some reason instead of saving back the settings when you OK the dialog, VS seems to wait until it quits to write back your changes, so after changing options I always quit and restart to ensure the changes have been flushed to disk. Similarly you should never change options with 2 or more instances of VS running, as the last one to quit will overwrite the settings.

In particular, there is an easily reproducible case: If you launch two or more copies at the same time (by which I mean if you start up two or more copies, so they are all initialising at the same time), they seem to fight over the settings file and it becomes corrupted or resets to defaults.

The best two workarounds I've found are:

  • Never launch more than one instance at a time. If you need to run several instances concurrently, then wait for the first one to finish loading its Solution before you start to launch the next.

  • Always use Tools > Import and Export Settings to save your settings to a backup file, so that recovering from this corruption only takes a few seconds each time it happens.

Another smaller, but still rather irritating habit is that if VS is minimised when it is quit (e.g. by shutting down), it corrupts its window position information and the next time you run it, it will be maximised.

Jason Williams
  • 56,972
  • 11
  • 108
  • 137
6

I had a similar issue when the My Documents folder was stored on a mapped drive. If I opened VS before mapping the drive, VS would act as if it was the first time it had been opened. I solved this issue by storing the environment settings on the local disk.

Tim Scarborough
  • 1,270
  • 1
  • 11
  • 22
  • 1
    I have problems all the time having vs settings on a mapped drive. I have mine set to save locally, but even then, at random, VS will change the save path back to the mapped drive. – CodingWithSpike Sep 27 '09 at 17:47
4

I just ran into this problem too (seemed to trigger after a windows update) where I kept getting some bogus window layout no matter what I did. The above suggestions didn't work either. But luckily the suggestions in: Why doesn't VS 2008 IDE remember my preferences? of deleting:

%APPDATA%\Application Data\Microsoft\VisualStudio\9.0\windows.prf

worked.

TP

Community
  • 1
  • 1
user1331100
  • 41
  • 1
  • 2
  • 3
    try %APPDATA%\Microsoft\VisualStudio\9.0\windows.prf ... lose the Application Data\ because %APPDATA% is the pointer to that. – CAD bloke Jul 24 '14 at 05:25
  • No such file when using visual studio 2015 community. Any suggestions for newer versions of visual studio? – ZiGiUs Jan 18 '16 at 14:59
3

I tried Peter McG's solution, still didn't help. What ended up working for me was to delete my VS Solution User Options (.sou). Located in the same directory as my solution.

Only bad thing is you have to redo all of your settings. This included my exception changes. Not to much to change, but if you have a lot of customization it could be a real pain. There must be something in that file messing everything up, but deleting the whole file is quick and easy.

Peter McG
  • 18,857
  • 8
  • 45
  • 53
3

Actually I worked out what the culprit was: previous VS crashes.

If one of my Visual Studio instances crashes for whatever reason - the next time I start up VS, I get a weird batch of settings. The behaviour depends on various factors, like whether or not I had other instances of VS open at the time.

cbp
  • 25,252
  • 29
  • 125
  • 205
1

My issue is similar, but the result is the app crashes. The problem was this value

In HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\MainWindow. It was set to "0 1000 -280 -100 3" probably due to having multiple screens and moving the UI around a lot.

Deleting this value allowed the app to restart successfully. It gets recreated on startup.

Dan Loughney
  • 4,647
  • 3
  • 25
  • 40
1

Which solution you're opening shouldn't matter because those settings are not solution-specific. But I wonder do you maybe have Visual Studio 2005 and 2008 installed? If so, opening a solution created in 2005 will open VS 2005 and opening a 2008 solution will open VS 2008. You may have VS 2005 even if you didn't install it. For example, InfoPath 2007 installs a VS 2005 shell.

First I would position the windows where you want them, then do a Tools -> Export Settings and include only the window layouts. That way you at least have something you can revert to.

Then I would check Tools -> Options -> Import Export Settings and make note of where the "Automatically Save My Settings To This File" path is set to. Keep an eye on that file. Do you have any sync software that may be inadvertently overwriting it? Does it point to a non-existing location?

Josh
  • 68,005
  • 14
  • 144
  • 156
0

I have experienced something similar. In my case the text editor colors (c# editor for example) are going haywire. The only solution that I tried and works for me is change color theme so something else and then back to what I want.

LucasM
  • 431
  • 4
  • 11
0

In my case its not the Window layout being corrupted but Intellisense offering code completion and pop-up help. Never had this issue for the last decade, now it happens 3 times a day at least. Win8.1, Visual Studio 2013, ReSharper 8 and now ReSharper 9 (in hopes the upgrade would fix it).

I now routinely have to

  • close the solution,
  • Tools/Import-Export Settings/Reset all settings
  • Close Visual Studio
  • Open Visual Studio Import my saved settings
  • RE-open the solution and continue working

I can then work fine again for quite some time until something goes awry... lets say a stack-overflow while I'm debugging. At that point I just know my settings are screwed and my Intellisense is dead again.

I'm starting to wonder if it isn't something to do with a latest Visual Studio update. There are things in there I never use like the advertising crap and Office development integration. MS Office has its own issues, like Office 64 bit not being seen by any other application such as Quicken as an installed email program. Or maybe its a conflict with ReSharper which wants to overtake and 'extend' the Intellisense feature.

Either way, I'm sure its a different manifestation of the same issue: Visual Studio settings are going sideways during normal use.

Clint StLaurent
  • 1,238
  • 12
  • 11
  • So yesterday I did the total reset as outlined by Peter McG near the top of this thread. It was like having a newly installed Visual Studio 2013. I had to reinstall all the extensions like TabsStudio, Perforce source control and ReSharper. I then laid out all the windows again. I did NOT install any of the extensions that I absolutely didn't HAVE to have. Truly a very lean and pristine installation. It ran fine all day. I did not reboot my laptop but did close Visual Studio over night. This morning when I opened Visual Studio the Intellisense was once again stupid. – Clint StLaurent Jan 02 '15 at 12:53
  • I'm starting to suspect the latest update 4 of Visual Studio 2013, conflicting with ReSharper. I never had this issue with VS12 or even VS13 with ReSharper 8. But I *think* this started happening with the update 4 of VS13. – Clint StLaurent Jan 02 '15 at 12:56
0

I just came across this issue in VS 2012, reset window layout was doing nothing.

I extrapolated

%APPDATA%\Application Data\Microsoft\VisualStudio\9.0\windows.prf

to

%appdata%\Microsoft\VisualStudio\11.0\Windows.index

... deleted it and was back in business!

  • Make sure you close all instances of VS first!
Dan
  • 1
0

I'm facing similar issue. And it also only started recently, like, within the last 30 days or so. The only thing I remember changing in this period was updating Resharper 4.5.

sergiopereira
  • 2,026
  • 2
  • 23
  • 31