Visual Studio 2012 automatically opens specific files on start - visual-studio

There are about 6 files that are automatically opened every time I launch Visual Studio 2012, even though they are already closed by me in the previous session. How can I make it so that those files no longer automatically open upon each launch, so I no longer have to manually close them?

Open documents and similar user options are stored in a .suo file in the same directory with your .sln file. If your specific .suo file became corrupted, you can try to manually delete it.

Just make sure close your files and "save your project" again. This should fix it.

Related

Project scripts not saved in the Visual Studio list

When I edit the Unity scripts, it opens up visual studio for me, and I manage the code there. Each script opened in visual studio has an x ​​next to its name, so you can remove it from view.
When I don't press the x and leave the script open in visual studio, if I close visual studio and open another script from Unity, the last script selected is shown, and alongside the previous script that I had not deleted with the x (it shows me the previous scripts that I had opened and had not removed).
What I just said happens with 6 of my projects.
The seventh however (not in order), does not behave like this. When I open a script and, without deleting it (from view, not from Unity), I close visual studio, the next time I reopen, the recent scripts are not displayed. I would like them to be displayed.
This is because I have about thirty scripts in the project, and managing the openings from visual studio is much faster than doing it from Unity, as first you have to search for the exact path of the script, and then you must also wait for it to load.
I searched for solutions and tried looking at visual-studio / unity settings, but didn't understand what may be causing this.
I have done the "Reimport All"
I have regenerated the project files
I have reinstalled Unity and Visual Studio Community 2019 from the Unity Hub
There's a .sln file, which references .csproj files, which contain the files within your project. These files are those listed in your solution explorer. These files are generated by Unity and are related to Project files. In Visual Studio in the Solution Explorer, you will see the Solution (.sln file) which contains one or more projects (.csproj), and the files within a project.
Now besides of that, Visual Studio has a lot of settings besides the actual solution and project. These settings are for instance:
How you arrange your view in VisualStudio
Which tabs are opened (Your question refers to the file tabs)
These settings are stored within a .suo file. These .suo files are located within a hidden directory .vs inside your project folder (next to the .sln file). Usually the .suo files and the .vs folder are part of the .gitignore list so they don't get added to the repository, because they are machine specific settings. E.g. you want your VisualStudio to be set up differently than that of another developer in your project.
I think you need to make sure that your .suo files don't get overwritten/changed by any other mechanism. For instance, if the .suo file is added to a git repository, another developer closes all the tabs, and pushes it's .suo file, and you pull that. Then after you reopen Visual Studio all the tabs will be closed. If you open 5 tabs, and push your .suo file, and the other developer pulls it, next time that developer opens VS the 5 tabs will be opened.
You can also try to delete the .vs folder to reset everything. Don't forget to make a backup though.

Where does Visual Studio store the watch window data?

I use to have some complex expressions in the watch window and out of a sudden the watch window is completely empty now. Of course I can put the expressions back manually but it would be really interesting to know where Visual Studio stores the watch window data? I doubt that it's stored in some solution related file since after a clean build the watches are still there.
I am using Visual Studio 2013 on Windows 10.
Watch window information is stored in the .suo file for the solution. I couldnt find it in any of the official documentation for, but the breakpoints are there and if you configure the watch window, then close VS, then delete the .suo file and open VS the watch window is empty. After closing VS, restoring the .suo file and opening VS again the watch window configuration is back. This is confirmed for instance by this blog post:
What informations are saved in my .suo file
This file is used by Visual Studio to store user/solution specific
information such as Opened Files, Expanded Nodes in the Solution
Visual Studio .suo fileExplorer, Opened Tool Windows and its
Positions, User Tasks, Breakpoints, Start-up Project, Contents of
Watch window, Whether the project is loaded/unloaded etc. The same
file is used by Visual Studio Addins (VSPackages) to persist
information that are specific to that solution/user.
I don't know where your .suo file went though, did you accidentally delete it?

How can I open a certain file automatically when opening a project in Visual Studio 2015

in some of my Visual Studio projects I have a file named "info.txt"
When I open a project VS remembers the files from the last session and restores them.
Is it possible to change this so that nothing is restored from previous sessions when I open a project and instead only a single file like "info.txt" is opend automatically ?
You can do it with my Visual Commander extension.
To Prevent Visual Studio from remembering last opened files you subscribe to DTE.Events.SolutionEvents.BeforeClosing and call Window.CloseAllDocuments.
To Open a file from the solution directory on opening a solution you subscribe to DTE.Events.SolutionEvents.Opened and call DTE.ItemOperations.OpenFile.

Visual Studio 2010 - How to enable prompt to delete file from disk when removed from project?

In Visual Studio 2005, when you remove a file from a C++ project (by right-clicking in the Solution Explorer and selecting "Remove"), it asks you whether you just want to delete the reference, or also delete the file itself from disk.
In Visual Studio 2010, this prompt seems to have disappeared (or I have accidentally turned it off). This means that every time I delete a file in the Solution Explorer, I have to immediately hunt it down and delete it with Windows Explorer (otherwise I'll forget and it will stay around forever). How do I get the prompt back?
I found some documentation (http://msdn.microsoft.com/en-us/library/0ebzhwsk%28v=vs.100%29.aspx) explaining the difference between "Remove" and "Delete", and that "Delete" doesn't exist for C++ projects (but no reason is given). Maybe it's really just not possible? If so, what an annoying regression.
You get the remove or delete file dialog only if the selected file is stored in the project folder. If the file is stored outside of the project folder the file reference is removed without dialog.
This behaviour is still the same for e.g. VS2013. I created a user voice request to change this behaviour here. IMHO your file hierarchy should not make any difference.
You can vote for the change here:
http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/9146353-remove-delete-dialog-should-show-up-when-deleting
Assuming one is using Sourcegear Vault as the source control system, you can enable the prompt by going to Tools -> Options -> Source Control -> Integration Options -> and check on "Show warning before deleting items from source control"

Is there anyway to tell Visual Studio not to open all the documents when I load solution?

When you open a solution in Visual Studio 2008 (or ealier versions for that matter), it opens all the documents that you did not close before you closed Visual Studio. Is there anyway to turn this functionality off, or a plugin that fixes this behavior? It takes forever to load a solution with 50 files open?
Have you tried deleting the .suo file?
It's a hidden file that lives beside your solution (sln) file. suo is "solution user options", and contains your last configuration, such as what tabs you left open the last time you worked on the project, so they open again when you
reload the project in Visual Studio.
If you delete it, a new 'blank' suo file will be recreated silently.
You can automate the process of closing all the files prior to closing a solution by adding a handler for the BeforeClosing event of EnvDTE.SolutionEvents -- this will get invoked when VS is exiting.
In VS2005, adding the following to the EnvironmentEvents macro module will close all open documents:
Private Sub SolutionEvents_BeforeClosing() Handles SolutionEvents.BeforeClosing
DTE.ExecuteCommand("Window.CloseAllDocuments")
End Sub
Visual Studio 2008 appears to support the same events so I'm sure this would work there too.
I'm sure you could also delete the .suo file for your project in the handler if you wanted, but you'd probably want the AfterClosing event.
From Visual Studio 2017 Update 8 there is an option in projects and solutions which you can use to enable this:
ALT-W-L
That's the key combination to close all open tabs, which can be pressed before closing a project, unless you prefer clicking Window | Close All Documents before closing the project.
--Gus
I dont think there is an option for this (or I couldnt find one) but you could probably write a macro to do this for you on project open.
This link has some code to close open files which you could adapt:
http://blogs.msdn.com/djpark/
I couldnt find the answer to this particular question but a good link for ide tips and tricks is:
http://blogs.msdn.com/saraford/default.aspx
Alternative answer:
Before you close your solution, press and hold Ctrl+F4, until all windows have been closed.
VS attempts to save the last known view. Other than the scripts mentioned above you can manually close all documents before exiting VS

Resources