' Get an instance of the currently running Visual Studio .NET IDE. Dim DTE as EnvDTE.DTE DTE = System.Runtime.InteropServices.Marshal.GetActiveObject("VisualStudio.DTE")难道是, 不行啊!http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsintro7/html/vxconreferencingdteobject.asp !!! 谁来救救我!
add envdte.dll to your project .string progpath=Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles); try{ Type latestDTE = Type.GetTypeFromProgID("VisualStudio.DTE"); EnvDTE.DTE dte = Activator.CreateInstance(latestDTE) as EnvDTE.DTE; if(dte!=null){ Window win=dte.Windows.Item(EnvDTE.Constants.vsWindowKindToolbox); ToolBox tb=(ToolBox)win.Object; ToolBoxTabs tbts=tb.ToolBoxTabs; ToolBoxTab tbt=null; ToolBoxTab mytab=null;foreach(ToolBoxTab t in tbts){ if(t.Name=="Web Forms") tbt=t; if(t.Name=="RComponent") mytab=t; } if(tbt!=null){ foreach(ToolBoxItem ti in tbt.ToolBoxItems){ if(ti.Name=="RCell") ti.Delete(); } tbt.Activate(); dte.ExecuteCommand("View.PropertiesWindow",String.Empty); tbt.ToolBoxItems.Add("AspNetPager", ApplivationUserPatth+@"CS.dll",vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent); } if(mytab==null){ mytab=tbts.Add("RComponent"); } else{ foreach(ToolBoxItem ti in mytab.ToolBoxItems){ if(ti.Name=="RCell") ti.Delete(); } } mytab.Activate(); dte.ExecuteCommand("View.PropertiesWindow",String.Empty); mytab.ToolBoxItems.Add("AspNetPager",ApplivationUserPatth+@"CS.dll",vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent); } else System.Windows.Forms.MessageBox.Show("Add component to toolbar oprttion doesn't sucess!"); }catch(Exception ex){ System.Windows.Forms.MessageBox.Show("Add component to toolbar oprttion doesn't sucess!Add it by your hand!"+Environment.NewLine+ex.Message); }
Dim DTE as EnvDTE.DTE
DTE = System.Runtime.InteropServices.Marshal.GetActiveObject("VisualStudio.DTE")难道是, 不行啊!http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsintro7/html/vxconreferencingdteobject.asp
!!!
谁来救救我!
try{
Type latestDTE = Type.GetTypeFromProgID("VisualStudio.DTE");
EnvDTE.DTE dte = Activator.CreateInstance(latestDTE) as EnvDTE.DTE;
if(dte!=null){
Window win=dte.Windows.Item(EnvDTE.Constants.vsWindowKindToolbox);
ToolBox tb=(ToolBox)win.Object;
ToolBoxTabs tbts=tb.ToolBoxTabs;
ToolBoxTab tbt=null;
ToolBoxTab mytab=null;foreach(ToolBoxTab t in tbts){
if(t.Name=="Web Forms")
tbt=t;
if(t.Name=="RComponent")
mytab=t;
}
if(tbt!=null){
foreach(ToolBoxItem ti in tbt.ToolBoxItems){
if(ti.Name=="RCell")
ti.Delete();
}
tbt.Activate();
dte.ExecuteCommand("View.PropertiesWindow",String.Empty);
tbt.ToolBoxItems.Add("AspNetPager", ApplivationUserPatth+@"CS.dll",vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent);
}
if(mytab==null){
mytab=tbts.Add("RComponent");
}
else{
foreach(ToolBoxItem ti in mytab.ToolBoxItems){
if(ti.Name=="RCell")
ti.Delete();
}
}
mytab.Activate();
dte.ExecuteCommand("View.PropertiesWindow",String.Empty);
mytab.ToolBoxItems.Add("AspNetPager",ApplivationUserPatth+@"CS.dll",vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent);
}
else
System.Windows.Forms.MessageBox.Show("Add component to toolbar oprttion doesn't sucess!");
}catch(Exception ex){
System.Windows.Forms.MessageBox.Show("Add component to toolbar oprttion doesn't sucess!Add it by your hand!"+Environment.NewLine+ex.Message);
}