J
Johnny Jörgensen
Hi
I've created an add-in for VS2005, and it works fine on my development
machine. Now I want to deploy it to another machine, and I can't find out
how to register it. I read the following article on MSDN:
http://msdn2.microsoft.com/en-us/library/19dax6cz(VS.80).aspx
There it says:
************* Start quote ******************
In Visual Studio .NET 2002 and Visual Studio .NET 2003, you were required to
register add-in assemblies with Windows as COM components by using the
Assembly Registration Tool (regasm.exe). Also, you were required to register
the add-in with Visual Studio by using keys in the Windows registry before
the add-in would appear in the Add-In Manager.
These steps have changed in Visual Studio 2005. You no longer need to
register the .NET assemblies with Windows by using regasm. Instead, you
simply place the assembly .DLL file into a specific directory (described
later in this topic) along with an XML file that has an .Addin file
extension. This XML file describes the information that Visual Studio
requires to display the add-in in the Add-In Manager. When Visual Studio
starts, it looks in the .Addin File location (listed below) for any
available .Addin files. If it finds any, it reads the XML file and provides
the Add-In Manager with the information needed to start the add-in when it
is clicked.
This simplified registration method allows XCopy-style installations for
managed code add-ins. If you put all the files in the right place, then your
add-in works just fine. Also, its use of commented XML to define the
registration settings for add-ins allows the information to be more easily
understood and edited than registry keys.
The .Addin File
A new XML file with the extension, .Addin, replaces the old add-in registry
settings. Two copies of the .Addin file are automatically created upon
completion of the Add-In Wizard:
..Addin File location .DLL File Location Description
Addin folder
(for example, \Documents and Settings\All Users\My Documents\Visual Studio
2005\Addins)
-or-
\Documents and Settings\<user name>\My Documents\Visual Studio
2005\Addins)Project debug folder
(for example, \My Documents\Visual Studio
Projects\MyAddin1\MyAddin1\bin)Used for running the add-in in the debugging
environment. Should always point to the output path of the current build
configuration.
Root project folder
(for example, \My Documents\Visual Studio\Projects\MyAddin1)Local path
(MyAddin1.dll)Used for deployment of the add-in project. It is included in
the project for ease of editing and is set up with the local path for
XCopy-style deployment.
************* End quote ******************
But I don't get this. It can't be true that another user of my add-in has to
have a folder in HIS projects folder containing the add-in! And it doesn't
work anyway.
From what I understand of the text above, it suffices having a .Addin
XML-file, but no matter if I put it in "MyDocuments\Visual Studio
2005\Addins", "MyDocuments\Visual Studio 2005\Addins\MyAddInName" or
"MyDocuments\Visual Studio 2005\Projects\MyAddInName" on the target machine,
Visual Studio doesn't seem to find it.
What am I missing?
Cheers,
Johnny J.
I've created an add-in for VS2005, and it works fine on my development
machine. Now I want to deploy it to another machine, and I can't find out
how to register it. I read the following article on MSDN:
http://msdn2.microsoft.com/en-us/library/19dax6cz(VS.80).aspx
There it says:
************* Start quote ******************
In Visual Studio .NET 2002 and Visual Studio .NET 2003, you were required to
register add-in assemblies with Windows as COM components by using the
Assembly Registration Tool (regasm.exe). Also, you were required to register
the add-in with Visual Studio by using keys in the Windows registry before
the add-in would appear in the Add-In Manager.
These steps have changed in Visual Studio 2005. You no longer need to
register the .NET assemblies with Windows by using regasm. Instead, you
simply place the assembly .DLL file into a specific directory (described
later in this topic) along with an XML file that has an .Addin file
extension. This XML file describes the information that Visual Studio
requires to display the add-in in the Add-In Manager. When Visual Studio
starts, it looks in the .Addin File location (listed below) for any
available .Addin files. If it finds any, it reads the XML file and provides
the Add-In Manager with the information needed to start the add-in when it
is clicked.
This simplified registration method allows XCopy-style installations for
managed code add-ins. If you put all the files in the right place, then your
add-in works just fine. Also, its use of commented XML to define the
registration settings for add-ins allows the information to be more easily
understood and edited than registry keys.
The .Addin File
A new XML file with the extension, .Addin, replaces the old add-in registry
settings. Two copies of the .Addin file are automatically created upon
completion of the Add-In Wizard:
..Addin File location .DLL File Location Description
Addin folder
(for example, \Documents and Settings\All Users\My Documents\Visual Studio
2005\Addins)
-or-
\Documents and Settings\<user name>\My Documents\Visual Studio
2005\Addins)Project debug folder
(for example, \My Documents\Visual Studio
Projects\MyAddin1\MyAddin1\bin)Used for running the add-in in the debugging
environment. Should always point to the output path of the current build
configuration.
Root project folder
(for example, \My Documents\Visual Studio\Projects\MyAddin1)Local path
(MyAddin1.dll)Used for deployment of the add-in project. It is included in
the project for ease of editing and is set up with the local path for
XCopy-style deployment.
************* End quote ******************
But I don't get this. It can't be true that another user of my add-in has to
have a folder in HIS projects folder containing the add-in! And it doesn't
work anyway.
From what I understand of the text above, it suffices having a .Addin
XML-file, but no matter if I put it in "MyDocuments\Visual Studio
2005\Addins", "MyDocuments\Visual Studio 2005\Addins\MyAddInName" or
"MyDocuments\Visual Studio 2005\Projects\MyAddInName" on the target machine,
Visual Studio doesn't seem to find it.
What am I missing?
Cheers,
Johnny J.