Preferably a site that has macros searchable by Visual Studio version.
Well, the web's top Visual Studio project site is http://www.codeproject.com. You'll find lots of macros there.
Specifically, check http://www.codeproject.com/KB/macros/
I think there is no specific search for Studio versions, but each macro in there carry its own compatibility specification.
Related
What is the difference between visual c++ and visual studio.
Also codes written in visual c++ do affect the portability and functionality of the code??
Visual C++ is one of the languages that is supported in the Visual Studio IDE. I'm not aware of a separate Visual C++ IDE, and relevant searches return information about working in Visual Studio.
These are all part of Microsoft's development platform, and as such they most easily target Windows platforms and .NET. Beyond that I'm not sure I understand your question about portability.
I remember seeing Visual C++ awhile back but Microsoft has moved to making Visual Studio their single IDE.
Check out this wiki link for more information. It says that Visual C++ has migrated into Visual Studio. However, it seems there might be some compatibility issues if you are using an older VS. I see you tagged VS2010 so you may want to read up on it depending on what functions you're using. Looks like VS2015 update 3 is the latest release that captures those functions.
https://en.wikipedia.org/wiki/Visual_C%2B%2B
My question is rather simple. I have a project using a few external libraries documented with doxygen.
Is it possible, with Visual Studio (or with the help of an extension) to view to doc associated with a class or a method by clicking on it or via a keyboard shortcut, all without leaving Visual Studio?
I've stumbled across Doxygen Browser Add-in for Visual Studio, which looks quite good. Compatible with most currently used Visual Studio versions.
Other than that, there's a more DIY solution avaialble by (apparently quickly) writing up a Visual Studio extension, as described here.
Is it possible to build a Debugging Visualizer that can be used in multiple versions of Visual Studio?
A Debugging Visualizer has to reference Microsoft.VisualStudio.DebuggerVisualizers.dll and there is a separate version of the assembly for every version of Visual Studio. It seems that these versions are not compatible. For example, if I built a visualizer that references Microsoft.VisualStudio.DebuggerVisualizers v9.0, it can be used in Visual Studio 2008, but not in Visual Studio 2010.
I am looking for a way to target at least Visual studio 2008 and Visual Studio 2010 while maintaining only one project for the visualizer. Duplicating the project and changing only references to Microsoft.VisualStudio.DebuggerVisualizers will work, but it creates a maintenance horror.
If your code base is exactly the same for both referenced assemblies then I would suggest the same approach as I've suggested in this question: Visual Studio Installer -- Change application resource
The idea is to have 1 project where you will have a MSBuild property which VS to target and depending on this property you may reference either VS 2008 or VS 2010 DebuggerVisualizers assembly.
The only other solution I see is the one you've mentioned - having 2 separate project files to target different VS version. I do not think it will be that difficult to maintain two versions if you will not duplicate code. And you can avoid duplicating code by including code files as links into your projects.
I have used Specflow in Visual Studio 2010 Pro at work but would like to use it on my personal projects. Unfortunately I only have VS210 Express.
I have not managed to get Specflow working in VS2010 Express. has anyone done this or is it even possible.
thanks,
I have managed to do this, and I have written a blog post on how to do this entitled: "C# ATDD on a shoestring (or the complete guide to SpecFlow & NUnit in VS2010 Express)"
The main idea is: SpecFlow generates fixtures for one of the common Unit-Test-Frameworks. More information you can find here.
I suppose that you loose some Item templates that appear in the Visual Studio Professional but disappear for Visual Studio Express versions. To overcome this problem you should take all templates files from SpecFlow application folder on computer where you have Professional version installed. On my computer it is located here:
C:\Program Files (x86)\TechTalk\SpecFlow\ItemTemplates
There should be the files like: SpecFlowFeature.zip and etc, all with *.zip extension. Then you should copy its to your computer for this place:
C:\Users\[User name]\Documents\Visual Studio 2010\Templates\ItemTemplates\Visual C#
And finally, open Microsoft Visual C# 2010 Express. Create console application, for example. And choose Project -> Add new item. There is only possible to open these templates with Microsoft Visual C# 2010 Express. Because inside template files it was defined that templates could be open only with C# project type.
You can't use 3rd party add ons (like Specflow, ReSharper etc.) with the Express editions of Visual Studio. I can't find the reference right now, but this will be why you can't integrate Specflow.
This is easily one of the most annoying "features" of Visual Studio in its history and I don't understand why it exists -- ever.
Why would a CodePlex project need to care what version of Visual Studio I am using?
Off the top of my head, the only thing I can think of is that some versions of Visual Studio might introspect assemblies searching for attributes to determine what to display in "Visual Designers" and "Property Editors". But why would that cause Visual Studio to not be able to open the project and allow me to browse its contents and compile?
It seems to me like Open Source in .NET is somewhat limited by the stupid dependency management exhibited by Visual Studio. In other words, if I am using Visual Studio 2008 and you are using Visual Studio 2010, then we have different solution files.
http://blogs.msdn.com/b/visualstudio/archive/2010/03/15/why-does-visual-studio-2010-convert-my-projects.aspx
Here's an example from the site as to why Visual Studio converts your projects to 2010 format.
For instance, Visual Studio runs
custom tools such as single file
generators for designers in order to
output code representing the changes
made to the designer. Many of these
custom tools are upgraded or
completely replaced in the newer IDE.
During conversion, the IDE knows which
custom tools to replace or upgrade. In
order to make round-tripping work, VS
would need old and new custom tools to
understand each other so as to ensure
that old and new designers can work
side by side. Other than designers,
the following files would also be
affected: resource editors, wizards,
code snippets, item and project
templates, diagramming and modeling
tools, and many more.tools, and many more.
Since 2010 knows about what tools 2008 has, it can convert forward to be compatible with the custom tools 2010 uses. 2008 has no idea about what 2010 is using, how could it? Therefore, it is impossible to convert backwards since it doesn't know what it needs to convert, nor how to.
I believe the purpose of this touches on what you stated in your comments. If you are using 2008 and I 2010 and I compile it, how could you possibly run it again? 2010 is backwards compatible but 2008 has no way to make itself forward compatible.
Thus, by recompiling the project in 2010 I ensure that no 2008 user may mistakenly think they can compile it.