Replacing/Extending Visual Studio's Generate Stub in Visual Studio 2010 - visual-studio

When we write the name of a method that doesn't exist, Visual Studio 2010 asks us if we'd like to generate a method stub with that name. What I'd like to know if is it possible to replace that same code stub generating command with one made by myself. I never did any kind of extensibility programming for Visual Studio so I have a couple of questions:
How hard is it? Is it something I can learn in a couple of nights, or is it something that'll make me "lose" a lot of time?
It seems to me that there isn't a lot of support for that kind of programming, as generally people are not that interested in developing solutions that extend the Visual Studio IDE. I searched on SO and it doesn't appear to have many threads about extending Visual Studio.
I don't know how the generate method stub thing works in Visual Studio, but I just wanted to turn it into something a bit more flexible and useful. Has anyone dealt with these kind of things before, that can give me a pointer to where to start? I know of MS VSX site but that has a lot of resources and can be overwhelming for someone new to the subject as I am.
What technology will I need to use? T4? Maybe I'll need to know a lot about the code, like Visual Studio does, so I can know other method's type arguments, names, etc. Is that what T4 is for?
Thanks

I searched the web a bit and I don't see anything about customizing the "Suggested Fix." Your thought in #2 is probably spot-on.
You can modify the VS editor by reading through http://msdn.microsoft.com/en-us/library/dd885242.aspx.

Related

Accessing the VS2010 version of the Microsoft.VisualStudio.VCProjectEngine assembly in VS2012

My company recently created a Visual Studio 2010 add-in that allows us to create LINT files from any given visual studio project from 2010, 2008 and 2005. We now want to get this same add-in to work in Visual Studio 2012, because we know that many of our customers will be using this in the near future, if not already.
We thought that it should be a simple "switch-in", and that the same code should work for both, but lo and behold, the VS10 add-in didn't work in VS12. So I copied the code (absolutely no changes) into a VS12 add-in, and surprise surpise, it did work. Naturally, we do not want to have two versions of the same code; bad for readability, bad for maintainability, so we still want to find a way to get the VS10 add-in to work in VS12.
I think the problem lies in the Microsoft.VisualStudio.VCProjectEngine assembly. This is interpreted differently in VS12 to how it was in VS10, meaning that when VS12 reads the add-in, it doesn't do what we want it to do.
I have done some research into this problem, and many people suggest creating a work around by using reflection, but I am reasonably new to this concept and don't feel confident enough to try it and risk seriously ruining the add-in.
So my question is this: Is there a nice and easy way of being able to read the VS10 version of the Microsoft.VisualStudio.VCProjectEngine into VS12?
Much appreciated :)
I later found an answer to this question and realised it hadn't been confirmed on the thread.
The answer indeed lies in the VCProjectEngine assembly. For some reason, this is a different module in Visual Studio 2010 to the module (with the same name) in Visual Studio 2012, which means any code requiring the module when written in VS2012 will not work in VS2010 and visa-versa.
It's a pain, because it means we have two lots of exactly the same code, but that is the way it has to be.

Is there something that improves the c++ interpreter built in to Visual Studio 2010?

I'm going to school for computer programming and I have been using Xcode and really like its predictive text input (or whatever you call it maybe interpreter). The only thing is that it seems to function a little different when creating a C++ project. Such as you don't have to say "#include " to use the string library. Where as in Visual Studio you have to. What i'm afraid of is turning in a class project done on Xcode and missing including a lib and losing points. So i would like to do it on VS 2010 but i would like to have a better interpreter. Any help on this.
I think you mean AutoComplete..... and there is an add on called Visual Assist X that makes it magic for C++ coding.

What are people replacing the missing C++/CLI Intellisense in VS 2010 with?

I'm about to start a project where I will be likely to use a lot of C++/CLI. I really miss C++/CLI Intellisense in VS 2010. I've heard of some Resharper-like products for C++, but wonder if they provide complete Intellisense. Do they also work with C++/CLI?
What are people doing to overcome this limitation?
Visual Assist X, a commercial addin for Visual Studio developed by Whole Tomato Software
Yes, Visual Assist X does support C++/CLI because we make heavy use of it. Its a good product, give it a try. What it doesn't do, however is make browsing or F1 help work.
Visual Assist is rumored to have IntelliSense support. They don't advertise it, which is mighty strange. Better try to eval version to check.
Other than that, I don't doubt that most devs replace the missing support in VS2010 with VS2008.

Visual Studio Add-in Exec running Automatically

Hey guys, I have a dilemma that I am uncertain about, as I not sure if it's is exactly possible for a Visual Studio Add-in to run its code automatically.
I need an add-in that can run passively, like a logger for Visual Studios. However, the Exec method that I know so far can only execute commandbar functionality, but I need the code to execute when the user right-clicks, or select a line of text.
I was able to make an automatic logger if i put my code in the "querystatus", but that would be considered bad programming, and it does not log when I simply select a piece of text.
Does anyone know how to make a passive or automatic running code in Visual Studios?
Unfortunately I think you may need to implement this as a VS Package, which is a much more powerful way to extend Visual Studio. I'd highly recommend looking at the MSDN documentation regarding the "Integration Architecture", it will give you a good idea about the VS extensibility model works and some of the concepts that it uses.
More specifically to your problem, it sounds like you want to extend the Visual Studio editor. There's quite a bit of documentation about extending the editor on MSDN.
Hope this helps!

What is so great about Visual Studio? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 12 years ago.
In my admittedly somewhat short time as programmer, I have used many development environments on many platforms. Most notably, Eclipse/Linux, XCode/OSX, CLI/editor/Linux, VisualDSP/Blackfin/Windows and MSVC/Windows. (I used each one for several months)
There are neat features in pretty much all of them. But somehow, I just can't find any in MSVC. Then again, so many people really seem to like it, so I am probably missing something here. So please tell me: What is so great about Visual Studio?
Things I like:
Refactoring tools in Eclipse
Build error highlighting in XCode and Eclipse
Edit-all-in-Scope in XCode
Profiler in XCode
Flexibility of Eclipse and CLI/editor
Data plotting in VisualDSP
Things I don't like
Build error display in MSVC (not highlighted in code)
Honestly, this is not meant to be a rant. Of course I am a Mac-head and biased as hell, but I have to use MSVC on the job, so I really want to like it.
The best thing about visual studio is that it's the host application for Resharper ;)
It depends from programmer to programmer. I preferably like Visual Studio because:
(1) Development is much faster as compared to other IDEs.
(2) Intelli-Sense concept works best in Visual Studio. In some IDEs I noted that the menu opens when you pressed the . and moved ahead. And also the concept of Intelli-Sense started with Visual Studio. I am sorry for hurting if I am wrong.
(3) I use Aptana Studio for PHP development. It is a great IDE as it is built on Eclipse, but still I am able to work faster, specially while working on HTML files, using Visual Studio than in Aptana. But again, Aptana also has some very neat features.
(4) I find debugging a .NET application using Visual Studio much easier than working with other IDEs.
IMHO, Visual Studio has one of the best debuggers in the business. Much easier to use than the many graphical frontends to gdb out there.
Visual Studio is more integrated with its supported languages than anything I have ever experienced (I've been around the block--Aptana, Eclipse, Zend Studio, etc.).
Add ReSharper to the mix, and I'm in heaven.
What I like is the:
Intellisense (code-comletion features)
In-environment documentation
ReSharper is a plug-in which enhances these things and adds some more advanced features like large-scale refactoring, killer object discovery features, code validation against recommended standards (which you can change to fit your own needs).
After close to 10 years using and loving Visual Studio up to version 2008, I have been doing some Java development in Eclipse for a few months and I am quite surprised that, in my opinion, Eclipse is a much more advanced IDE. I just miss a lot of features when I go back to VS.
Perhaps the people that think VS is the best haven't used any other modern IDE lately.
I had the same question myself, since everyone seems to love Studio (and I personally think it's not even close to Eclipse's abilities).
After a lot of reading, I came to the (possibly wrong?) conclusion that: Visual Studio is great for .net languages, but Visual Studio for C/C++ is just not close to as good.
Almost everyone who speaks so highly of Visual Studio is coming from a .net background, and a lot of the wonderful things they keep talking about, I just couldn't find when working on C++.
This, btw, makes a lot of sense: the main effort of Microsoft is to push .net forward, and the tight integration with Studio makes it a very powerful IDE (the same way Eclipse is great for Java development).
If you are using Visual Studio for C or C++ programming, you should really look into Visual Assist X. It adds refactoring and better syntax highlighting and a few extra things.
If you are using Subversion for version-control, you should also look into VisualSVN (best) or AnkhSvn (free).
With those add-ons you might find Visual Studio more to your liking.
'Out of the box', I can write a program without having to go through all the hooplah of installing CDT (or whatever other tools). This is a real PITA for Ubuntu and not much better on windows. (The updates never seem to work right, there are always stupid package incompatibility problems, or special install steps).
The environment 'feels' natural to windows and non-clunky, and that lack of awkwardness counts a lot toward productivity. Shortcuts are common with other windows apps, window behavior is the same, etc.
VS is also not cluttered by a crapload of windows when you open a project. I'm sure that there are ways to save the perspectives in Eclipse so you don't have to do this every time, but it is an extra step.
Visual Studio isn't a great IDE at all - I discovered that when I started C# development.
With Resharper it's pretty nice, with features present in better IDEs like Eclipse andIntelliJ IDEA.
I have no idea why Microsoft doesn't just buy JetBrains and merges Resharper into Visual Studio.
Visual Studio Team System Data Base Edition - all the tools you need: code editor with designer, Source Control, Team View and , what's best - Data Base deployment!
Probably someone else already gave this answer, but:
DEBUGGING Tools
That's it. Simple as that. Point me to one tool that can debug code as fully as VS can, and I'd marry it (yes, I'm married to VS). When you are targeting .Net, things get even better.
Which one did you use first?
From someone who has been developing since...uhm...punching holes in cards and has seen IDEs evolve I actually like using Visual Studio, but I like other ones too. I find Visual Studio is best with Microsoft specific languages such as VB or C#, and it has many of the features comparable to the points you say you like in others.
I do find that I need time to get used to a new IDE because since I use VS a lot, I'm usually looking for the VS way to do something. So maybe it's just the case of giving it time. And if you don't like it try out the customisations to change it or turn it off.
I dare say that VS introduced some ideas that other IDEs adopted and vice versa.
My top favourite thing is the intelli-sense that never seemed too obtrusive compared to other IDEs, and for C# VS 2003 seemed to get a lot clever at predicting what I wanted to type.
It certainly is not an IDE to despise.
VS is getting better from version to version, with 3rd party tools like resharper it is as good as the other tools. (sames goes to profiling.. the 3rd parties are pretty good).
basically - if you coding dot net - this is the tool, and if you're coding java - you have the others...
so the real question - which framework you like better, and not which IDE....
.... and if you are only using good old c++ I think which ever tool you're used to...
I used to compile c++ on borland on dos and I was happy :-)
I use both Delphi and Visual Studio. While I prefer Delphi (for a lot of reasons), there are some things that Visual Studio does better.
The code editor works better, making writing code smoother, and therefore faster.
The help. It's faster, returns more relevant results and is better integrated into IDE.
It's more of a .Net thing than Visual Studio, but I'm really liking ASP.Net, so I'd have to call that another win for VS.
And for bonus points, I'm also a big fan of Delphi Prism, which is hosted in Visual Studio.
So, if you're writing code for Windows, there are a lot of things to like in the Visual Studio IDE.
The debugger (I primarily use C++). I make sure my projects work in Visual Studio all along, even if my team in my job isn't supporting it, because it always saves our hide in the end. Otherwise its non-standard solution/project system is somewhat annoying.
Also, for someone accustomed to using VS, Eclipse is far too sluggish. It's like an ice hockey fan trying to become a soccer fan. It can happen, but it's not easy.
I tried using VS2010 for working on a Great Plains / eConnect project, and it kept crashing on me.
I would like to like this IDE, but I can't even use it right now. VS2010 has the featureset I need to work on the above (with the newest versions).
I like VS because it is the more responsive one (runs circles around Eclipse for instance). I'm still using 2005 though and not looking forward to the upgrade to 2010 (we skip every other release, so not 2003 and no 2008 here).

Resources