When we compare local version with server version in Visual Studio, how to make the local version editable? - visual-studio-2012

I found that sometimes when I use "compare" in Visual Studio, I couldn't edit the local version at all. But sometimes it does allow this. Is there any setting in TFS that is related to this functionality?
The steps I followed:
Right clicked the file in Solution Explorer I want to compare, and chose "Compare", with the dialog window popped out like this:
and cliked "OK"
I found several questions similar to my question, but amazingly all of them don't have even a relevant answer:
Visual Studio Diff Tool - When is Editing Allowed?
Under what conditions will the Visual Studio 2012 Difference Viewer allowing editing a source file

Related

Visual Studio 2015 - Class Wizard in C++

When I right click my project and go to Class Wizard I'm met with the following error:
"The solution's source code database may not have been opened. Please make sure the solution is not open in another copy of Visual Studio, and that its database file is not read only."
What I've tried so far:
Creating a new project
Restarting Visual Studio
Restarting PC
Repairing Visual Studio
Reinstalling Visual Studio
Installing MS SQL Server Compact 3.5
Deleting the folder: C:\Users\Jacob\AppData\Roaming\Microsoft\VisualStudio\14.0
None of these have had any effect, and I'm finding very few pages online where others have had this issue. I am totally at a loss on what to do next.
If anyone has any ideas, I would really appreciate them.
It turns out the problem here was actually caused by JetBrains Resharper C++, which I didn't consider could be the problem.
There seems to be no solution, however the program provides an alternative Class Wizard in the same menu.

Visual Studio crashing when trying to diff or compare files

I'm using TFS for source control and the other day I undocked my laptop while running VS. I couldn't connect to the internet and then unfortunately there was an unexpected shutdown. Since then I have not been able to go into pending changes and compare the file to it's previous version. When I do, it crashes Visual Studio.
I can change the user tool in Options > Source Control > Visual Studio Team Foundation Server to use a third party diff checker and it works no problem. However, I've gotten used to Visual Studio's diff checker and would like to continue using it, if only because it doesn't open a separate window to diff in.
Since I'm not sure as to the source of the problem, my question is two-fold:
First, how do I fix Visual Studio's diff checker and stop it from crashing every time I try to compare with previous version.
Or, if the issue lies with TFS, why is it crashing and how do I fix it?
Click on Visual Studio Menu:
TOOLS > Options
Then on Left Panel:
Text Editor > HTML > Advanced
And finally on Right Panel:
Extension Management > Identify Helpful Extensions
Change this setting to false.
This is an old question, but I needed to fix this recently, so the bug still exists!
I solved this problem by going to Tools -> Options -> Source control -> Plug-in Selection and changing the plug-in to "Git"
Try to disable ability to Identify Helpful Extensions:
Go to Tools->Options->Text Editor->Html->Advanced->Extension Management->Identify Helpful Extensions and switch to false.
You can start VS in safe mode with "/SafeMode" param.

Sublime TFS Settings

When working with Classic ASP, Sublime is AWESOME, but what has been stopping me so far is the fact that at work we use Visual Studio Team Services (previously Team Foundation Service) to Check-out / Check-in files we edit and work on and that goes rather well with Visual Studio 2012 that we use. But VS is so slow compared to Sublime especially when all I care about is editing text.
Today I found out that Sublime Text (I use Version 3) has a plugin for TFS! So I installed it (also installed the TFS Power Tools 2012). But now I'm confused as I can not see any visual clues to my files like I do with Visual Studio 2012, so I don't know what files are up to date, and what files need checking in ... etc.
After reading the official page of the Sublime TFS plugin. I understand that I need to set tf_path somewhere! The page though doesn't say where and in what format :( I am lost.
Where do I set the tf_path and in what format?
Any help would be great, Thank You.
Navigate to Preferences -> Package Settings -> Sublime TFS and open both Settings - Default and Settings - User (which will be an empty file). Copy the entire contents of the default settings file to the user file, then change any paths to reflect your personal setup. Save the user file (you are not allowed to modify the default file, just close it), restart Sublime for good luck, and you should be all set.
If you want your Sublime Text changes to be seen in Visual Studio Team Explorer, then you can change your Workspace to a local one.
For more information: https://www.visualstudio.com/en-us/docs/tfvc/decide-between-using-local-server-workspace
Like this, you can use Sublime Text for editing and have as much ST windows as you want. And you can do the check-in of files using the Team Explorer. This is how I work. One Visual Studio with one or more Sublime Text windows. Very light-weight, efficient and productive.

Visual Studio 2012 Windows service .vdproj project migration

I'm trying to move a solution I have over to Visual Studio 2012 and one of the project types is .vdproj.
According to this link this project type is not supported in Visual Studio 2012:
MSDN says they recommend that you use InstallShield Limited Edition for Visual Studio.
The problem is, when I open up my solution in VS2012 and try to add a new "Enable InstallShield Limited Edition" project to my solution, I get an error message saying:
Creating project 'test'...project creation failed.
Why might I not be able to add a project of this type to my solution?
If I make a new empty solution I can't make an InstallShield project it in either.
I'm going to try to download InstallShield limited edition and see if it does anything.
I tried out that InstallShield download, and it added two extra project types, but I'm unable to create either of them. I'm able to add normal website projects to my solutions just fine, but not deployment projects.
The installer was named the same, but this one prompted me to re-start. After re-starting I was able to add an InstallShield project, but it gets created in its own solution. So, it looks like now I have to figure out how to use it, and I'll be good to go.
It's looking like the limited edition doesn't have support to install Windows services.
This will probably be long and boring because there's lots of steps, but I'd like to write up how to move from a Windows service installer .vdproj to the new InstallShield LE that's available in Visual Studio 2012.
Step 1: Create a merge module (.msm)
Follow the steps of this guide.
Notes:
You will need to install WiX 3.6 and isWiX
The latest release of IsWiX doesn't enable the Tools menu item in Visual Studio 2012. Edit the file: C:\ProgramData\Microsoft\MSEnvShared\AddIns\IsWiXAddin.Addin (XML) and clone the HostApplication element and update 10.0 to 11.0.
In step #8 of the guide, it references a code tab. This has been moved to the XML Editor item in the bottom of the left menu
I left the MergeRedirectFolder empty for my installation
Here is my isWix files view:
After you're done with the guide you should have an empty .wxs file that looks something like this:
Using the Component XML element pulled from here you should end up with a .wxs file that looks like this:
Hit build and you should now have a .msm file.
Step 2: Adding merge module to InstallShield
Go though the wizard to setup the basic install information like company and version information.
Find the redistributables view in ISLE. Right click the list and select browse for module. After your module is found and added, right click the modules and select properties. Set the destination folder drop down to INSTALLDIR. I had to set mine to the lowest level folder I created for my install path, so you might have to experiment a bit.
Build Project, and test on virtual machine
Redistributables Screen
If you're getting errors about the path being too long you might need to change the release location to something close to the root.
Here's a list of all the build errors for reference.
Now you should be able to run your installer and have it install/start a Windows service. A lot more work than .MSI files, we got it to generate in Visual Studio 2010, but overall it was not too bad.
While there is no easy or truly supported solution for Visual Studio 2012, Visual Studio 2013 users can get an extension from Microsoft in the Visual Studio Gallery.
I found this post which says you must download InstallShield first. It's a very confusing way to work. I suggest to vote up the post on the connect site and give them comments letting know how poor that is. They could at least give a more descriptive error http://connect.microsoft.com/VisualStudio/feedback/details/732196/project-creation-failed-for-installshield-limited-edition#tabs

Visual Studio 2012 doesn't convert vs2010 solution?

I opened my vs2010 solution with vs2012 but it didn't make any conversion as from 2008 to 2010 was happening. So my solution still remains the same as 10 label on it. when I make a new solution of course it has 11 label on it. I haven't got any problem running like that but I am curious. Is there any difference? if yes, how to convert into vs2012 solution?
I managed to 'convert' the solution file to change the line containing '# Visual Studio 2010' to '# Visual Studio 2012' in the .SLN file.
Manual editing of the solution file is not necessary, or recommended. Simply open the VS2010 solution in VS2012, left-click the solution (at the very top of the Solution Explorer), then use File | Save As to overwrite the original file. This will effectively convert the VS2010 solution file to a VS2012 solution file.
There are some exceptions, but mostly you'll be able to open the same project and solution files files in both VS2012 and VS2010 SP1.
VS2012 may convert projects when you first open them, but the changes are (except noted in the document linked) backward compatible with VS2010 (ie using conditionals where needed to only apply to either version when loaded) Most project types will be left entirely untouched though.
It is about Visual Studio 2012 Compatibility
If you created your assets in Visual Studio 2010 with Service Pack 1 (SP1), many of them will load and run in Visual Studio 2012 without any further action on your part.
Many assets will also open again in Visual Studio 2010 with SP1 without any issues, even after you open those assets in Visual Studio 2012
For C++ projects it makes a difference, as the 2012 compiler (VC11) will only be used on projects that are explicitly 2012, not on 2010 projects opened in VS 2012. Some C++11 improvements are available with the VC11 compiler but not with VC10 (see this SO Answer for a summary), including:
Range based for-loops
New standard library headers (atomic, mutex, thread,...)
Smaller standard library container sizes
(And more to follow when the Nov 2012 CTP is delivered to VS 2012)
In order to convert from VS 2010 project to VS2012 there is no need to manually edit the solution file or 'Save As' over the existing project. Instead:
If you decline the update when first prompted, you can update the project later by opening the Project menu and choosing Update VC++ projects... [at the top of the menu options]
From MSDN's "How to: Upgrade Visual C++ Projects to Visual Studio 2012"
(This page was linked from #Joachim's MSDN link, but I wanted to have the answer here on SO since a number of other answers suggested manual workarounds instead of this VS 2012 feature)
In my case, I had some Visual Source Safe stuff (my project was created with Visual Studio 2003/2005, yes, very old!)
Once I manually removed the VSS stuff, the conversion succeeded.
PS: I know it's about VS2010, but maybe this helps others.
You can convert a project from VS2010 to VS2012 by doing the following:
Add the 2010 project to your VS2012 solution by right-click on your solution in the Solution Explorer and Select Add --> Existing Project...
The project will appear in the solution and will have (Visual Studio 2010) appended to its name.
Right-click on the added project and select Properties.
In the Configuration Properties --> General pane, change the setting in Platform Toolset field to Visual Studio 2012 (v110)
Repeat for each configuration type, e.g. Release and Debug.
I came across this question while googling for a solution to a specific problem: MSBuild was failing to execute the Publish target against a VS2012 solution that had started life in VS2010 when called from the command line (specifically through TeamCity):
error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\2.3\Microsoft.WindowsAzure.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
MSBuild was looking for the Azure SDK 2.3 targets in the VS10 location (C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\2.3\Microsoft.WindowsAzure.targets). The cause is explained by Sayed Ibrahim Hashimi in a blog post and, as I understood it, boils down to some decisions they made while enabling cross-version compatibility for solution files. The solution was simple: add the VisualStudioVersion property to the MSBuild invocation, something like this:
msbuild.exe MyAwesomeWeb.sln /p:VisualStudioVersion=11.0
Practically speaking, this overrides the following in each csproj file:
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
Presumably you could get the same result by editing all of these by hand to replace 10.0 with 11.0 but that might break backwards-compatibility -- I haven't tried it. I also haven't tried an update to VS2013 to see if the problem persists.
So to wrap this up by answering the question: yes, there are some differences before you "convert" (using any of the methods offered by other answerers) and some differences remain afterwards.
This is slightly different, but along the same lines so in case it helps anyone:
I was loading a project where it looked like it was loading and then kept showing all projects as unavailable. No errors were on the migration report. I tried reloading the solution and projects many times, using various methods including suggestions here.
Finally I found a "Resolve Errors" option when right clicking on the solution in the Solution Explorer. VS went through a load process again and it worked; no problems.
I don't know what it did differently that time, but apparently it made a difference.
it's to simple just edit the .sol file
change the version to 11
like this
Microsoft Visual Studio Solution File, Format Version 12.00
Visual Studio 2012

Resources