Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
Bo, > >> - a CVSNT API through which one could call the > >> database write functions to create the entries > >> CVSNT Audit normally does for CVS > >> operations. > > > >Yes the CVSAPI already provides this, this is what I was > originally suggesting. > > > >Or you could do as Tony suggested and call the audit trigger > (which is a clean C API), the only trick there is getting the > sequence right and the parameters right since it's designed > to be called from CVSNT server during the commit/tag/whatever > operation. > > > I'm back at this again and I would like to know where I can get hold > of the CVSAPI documentation? I think Tony did start some docs, but I can't remember where... The best way to work out how to call the CVSAPI is to look at some program that already uses it. Eg: triggers/audit_trigger.cpp already calls all the database functions. I'm not sure if the CVSAPI will be very easy to call from Pascal/Delphi since it uses pointers and structures quite heavily, and that is why I suggested you may want to call the audit.dll itself. > I tried using DependencyWalker on the cvsapi.dll file to see the entry > points, but they are such that I cannot decode how to use them.... Give me a clear idea of what you want to do (though I suppose I could guess...) and I'll try and write something basic up in an e-mail. > What I think will be sufficient for the task at hand (filing the audit > database with old non-audited data) is access to the ls, log and > status calls to get the file structure out and then the data for each > file without using brute force by reading on filesystem level. I assume you mean to read the RCS data? No - we have no API for that in CVSNT (though we do in EVS). The 'original' CVS did this by calling RCS - and you could do the same with CVSNT - call the CVSNT RCS wrappers to get the info, or you could just parse the output of the cvs commands (this is how we are handling migrate from CVSNT to EVS). Regards, Arthur