Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

VSS 2005 event trapping

Posted on 2009-12-30
7
Medium Priority
?
476 Views
Last Modified: 2013-11-25
Using VSS 2005 with Visual Studio 2008.

I have created a DLL to trap events in VSS using my 2008 Visual Studio client. I used this as a guide: http://msdn.microsoft.com/en-us/library/hcdf9zk2%28VS.80%29.aspx

It works great on my PC.

I'd like to distribute this to other developers using the same VSS 2005 DB @ work. I've placed the DLL on the other PC's and placed the ssaddin.ini file in the proper directory where the ssapi.dll resides. No luck. When I try to register the DLL using regsvr32 it errors out.

Has anyone been successful doing this? Anyone know where I'm going wrong?

Thanks.
0
Comment
Question by:kalittaair
  • 4
  • 3
7 Comments
 
LVL 96

Expert Comment

by:Bob Learned
ID: 26154873
Did you install VSS 2005 on the other machines?  What error are you getting from regsvr32?
0
 

Author Comment

by:kalittaair
ID: 26155011
Yes, I did install VSS 2005 on the other machines. and placed the .ini file in the folder where the VSS API is located.

The error I get from regsvr32 is "VSSInterop.dll was loaded, but the DllRegisterServer entry point was not found. This file can not be registered."

Thanks.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 26155522
You can't register a .NET interop library with REGSVR32, since it is not a COM library, but a .NET run-time callable wrapper.  You wouldn't need to register anything if VSS is installed on the target machine.
0
Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

 

Author Comment

by:kalittaair
ID: 26156554
VSS is loaded on the target PC's. What do I need to do on the target machines besides what I've done? I've loaded VSS 2005 on the machines, created the ssaddin.ini file referencing my ProgID and placed it in the folder containing the ssapi.dll file, and copied my DLL to the target machine. Is this all I should have to do? I do not need to register this DLL in any way on the target PC? It is not working.

On another note, when I search my registry for my DLL name on the original machine where I built the DLL according to the link instructions above, I do find it listed in the registry.

Take a look at the link in my above post. I changed a couple minor names, but otherwise I followed those instructions to the letter and it works fine on the machine I used. I just can't figure out how to "install" my DLL on other machines.

Thanks.
0
 
LVL 96

Accepted Solution

by:
Bob Learned earned 2000 total points
ID: 26157846
Hmmm...you are building a bridge to SSAPI.DLL...

Register for COM Interop tells the IDE that you want to expose your .NET assembly to COM, so it does the necessary things on the development machine to make that happen.  A type library and the necessary registry entries are created.  On your target machines, you need to do the same thing.

There is a tool, REGASM, which can accomplish this.  Here is a reference that should explain how to use the program:

How to register .NET Assembly for COM Interop
http://blogs.msdn.com/jigarme/archive/2008/04/28/how-to-register-net-assembly-for-com-interop.aspx
0
 

Author Closing Comment

by:kalittaair
ID: 31671484
Worked great. Thanks!
0
 

Author Comment

by:kalittaair
ID: 26180685
Thanks TheLearnedOne!

Anyone have any resource tips/ideas on extending VSS? Web links or books?
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Is your data getting by on basic protection measures? In today’s climate of debilitating malware and ransomware—like WannaCry—that may not be enough. You need to establish more than basics, like a recovery plan that protects both data and endpoints.…
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
Suggested Courses

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question