Visual Studio Development Bookmark and Share   
 index > Visual Studio Source Control and SourceSafe > SourceSafe addin for both VSS and VS?
 

SourceSafe addin for both VSS and VS?

I am using SourceSafe 6.0d and Visual Studio 2005.

I have written a SourceSafe addin (ie. IVSSEventHandler using ssapi.dll and ssaddin.ini). It runs fine from SourceSafe application if I have the dll in the SourceSafe dll (C:\Program Files\Microsoft Visual Studio\Common\VSS\win32), but doesn't run from Visual Studio. It runs fine from Visual Studio if I have it in the Visual Studio directory (C:\Program Files\Microsoft Visual Studio 8\Common7\IDE), but then it doesn't run from SourceSafe.

My question is:
Is there ONE location I can place the addin dll so that it runs from BOTH SourceSafe and Visual Studio? or is it necessary to duplicate this dll?
xqpgkdne  Tuesday, April 01, 2008 10:53 PM
I did eventually figure it out. I needed to install the assembly into the global assembly cache (GAC) and then it was visible to both applications. To do this I needed to sign the assembly with a strong name.

In brief, I did this by:

1) Creating a key file the strong name tool: sn.exe -k mysnkfile.snk
2) Signing the assembly: Project properties -> Signing -> Sign the assembly -> mysnkfile.snk
3) Installing the assembly to the gac after building: Project properties -> Build Events -> Post-build event command-line -> "$(FrameworkSDKDir)Bin\gacutil.exe" -if $(TargetPath)

These aren't the steps I would follow if I were deploying this assembly, but this a developer-only tool so it does the job.
xqpgkdne  Monday, April 07, 2008 5:50 PM
The SourceSafe addin dll is written in C# .Net .
xqpgkdne  Wednesday, April 02, 2008 2:16 PM
I did eventually figure it out. I needed to install the assembly into the global assembly cache (GAC) and then it was visible to both applications. To do this I needed to sign the assembly with a strong name.

In brief, I did this by:

1) Creating a key file the strong name tool: sn.exe -k mysnkfile.snk
2) Signing the assembly: Project properties -> Signing -> Sign the assembly -> mysnkfile.snk
3) Installing the assembly to the gac after building: Project properties -> Build Events -> Post-build event command-line -> "$(FrameworkSDKDir)Bin\gacutil.exe" -if $(TargetPath)

These aren't the steps I would follow if I were deploying this assembly, but this a developer-only tool so it does the job.
xqpgkdne  Monday, April 07, 2008 5:50 PM

You can use google to search for other answers

Custom Search

More Threads

• How to control line breaks/wraps on the command line
• Getting latest version of the files
• Visual Source Safe Purchasing Question
• HTTP access to VSS 2005 through ISA Server
• VSS 2005 slows down debugging of projects in VS 2005
• Admin Rights & checked-in files
• How to remove a project from Source Safe using visual studio
• [MSSCCI] How to show pending file deletes in the "Pending Checkins" window?
• Can someone explain to me this command line syntax ?
• VSS on a 64 Bit machine