Σε αυτό το link http://msdn2.microsoft.com/en-us/library/hcdf9zk2.aspx έχει ένα ωραίο παράδειγμα για το πως μπορείς να φτιάξεις ένα component που θα λειτουργεί ως event sink για το Visual SourceSafe, μέσω του automation που αυτό παρέχει. Το πρόβλημα είναι ότι χρησιμοποιεί το namespace System.Runtime.InteropServices.ComTypes το οποίο είναι Framework 2.0. Μέσω αυτού του namespace είναι εφικτό να γίνει το παρακάτω:
public void Init(VSSApp app)
{
MessageBox.Show("Init");
// by saving the VSSApp pointer you can drive the database during events
this.vssApp = app;
// Wire up the COM connection point manually
IConnectionPointContainer cpc = (IConnectionPointContainer) app;
Guid guid = typeof(IVSSEvents).GUID;
cpc.FindConnectionPoint(ref guid, out vssEvents);
vssEvents.Advise(this, out cookie);
}
Ουσιαστικά είναι το implementation του IVSSEventHandler.Init interface το οποίο συνδέει το component με το SSAPI.DLL
Το ερώτημα είναι: Πως μπορεί να υλοποιηθεί αυτό σε Framework 1.1; Έχω δοκιμάσει το implementation με τον κλασικό τρόπο που δημιουργούμε COM components μέσα από .ΝΕΤ αλλά για κάποιον λόγο που δεν γνωρίζω το VSS client δεν μπορεί να φορτώσει το Add-in
Ξέχασα! Όλα τα παραπάνω είναι για το VSS 6d
Vir prudens non contra ventum mingit