The VS.NET addin is really cool, and has a lot of potential, but is currently a bit flaky including the setup. The MSI install includes about 8 extra dependent assemblies that are already part of Visual Studio or the .NET framework Should all of these really have been installed along with the add-in?
-Extensibility.dll -Microsoft.VisualStudio.Designer.Interfaces.DLL -Microsoft.VisualStudio.DLL -Microsoft.VisualStudio.WizardFramework.DLL -Microsoft.VSDesigner.DLL -MSDDSLMP.dll -MSDDSP.dll -VSLangProj.dll Is anyone working on polishing up the docking issues, install issues etc, to really make this thing shine? I think this addin would be a big boost to the acceptance of NAnt. Most Visual Studio Developers don't want to leave their IDE to a command line to do their builds. Thanks, --Loren -------- Following is just some more information about how I determined these weren't needed for the addin to run: I was curious to find the minimum set of assemblies and registry changes necessary to run the add-in. As a test I wrote a no-frills NAnt build script to do just the bare miminum amount of registration needed to get the addin running (not including the docs). 1) I copied all of the files in "Tools\VSNetAddin\build\NAntAddin" into the folder I wanted the addin to run from, 2) I also copied "Tools\VSNetAddin\RegisterAddin.txt" into this folder. Then I ran the register task in the following script from within that folder. <project name="NAntAddin" default="register" verbose="false"> <property name="dest.dir" value="${nant.project.basedir}"/> <target name="register"> <exec program="regsvr32" commandline="/s "${dest.dir}\VSUserControlHost.dll"" /> <exec program="regasm" commandline=""${dest.dir}\NAntAddin.dll" /tlb:NAntAddin.tlb /codebase" /> <script language="C#"> <code><![CDATA[ public static void ScriptMain(Project project) { string sourcePath = Path.Combine(project.BaseDirectory, project.Properties["dest.dir"]); string inputFileName = Path.Combine(project.BaseDirectory, "RegisterAddin.txt"); string registerFileName = Path.Combine(project.BaseDirectory, "RegisterAddin.reg"); StreamReader reader = File.OpenText(inputFileName); FileStream stream = null; try { string contents = reader.ReadToEnd(); string curPath = sourcePath.Replace(@"\", @"\\"); string newContents = contents.Replace("%CURRENT_DIRECTORY%", curPath + @"\\"); stream = File.Create(registerFileName); StreamWriter writer = new StreamWriter(stream); writer.Write(newContents); writer.Flush(); } finally { reader.Close(); stream.Close(); } } ]]></code> </script> <exec program="regedit" commandline="/s "${dest.dir}\RegisterAddin.reg"" /> <delete file="${dest.dir}\RegisterAddin.reg" /> </target> <target name="unregister"> <exec program="regsvr32" commandline="/u /s "${dest.dir}\VSUserControlHost.dll"" failonerror="true" /> <exec program="regasm" commandline=""${dest.dir}\NAntAddin.dll" /unregister" /> </target> </project> The unregister task will remove it (except for the part that was added by the .reg file...which VS will ask to remove for you if you try to load the addin after it's been unregistered) After registering the addin using this technique, it seemed to be fully functional (except of course the documentation) ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ NAntContrib-Developer mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer