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/Tony, > Nice idea but those functions aren't exported.. in fact . . . > you can do it > manually starting with get_plugin_interface in audit.dll - > something like: > > plugin_interface *p = get_plugin_interface(); > p->init(p); > trigger_interface *t = p->get_interface(p, pitTrigger, NULL); > > Then you call as before: > > t->init(NULL, "commit", "2000-11-01 10:42:15", "localhost", "fred", > "/cvsrepo", "d:\cvsrepo", "000001234", NULL, 0, NULL, NULL, > '2.5.04', NULL); > t->pretag(NULL, "", "/module/directory", 2, > {"file1.txt","file2.txt"}, > {"1.2","1.3"}, 'T', "", "Rel_1_2_0"); > > And to close down: > > t->close(t); > p->destroy(p) You are right (of course) but I was trying to avoid the need for pointers to functions. The beauty of the Microsoft Win32 'C' API is that it avoids all constructs that are difficult to handle in Basic/Cobol/Pascal/RPG - so it specifically avoids pointers to functions (except for the basic case of a callback - and most functions are available without the 'Ex' suffix so avoiding callbacks altogether). Annoyingly the Win32 API does often require structures which are time consuming to get right in other languages but usually can be handled (with effort). I've threatened for years to write a 'C' layer on top of the existing API (meaning a laywe without the need for pointers to functions and structures), and I've only avoided it because noone was really showing any interest in using the API. If I wasn't so busy right now with EVS (and Suite and CVSNT) I'd spend a couple of days on it right now so that Bo has something to work with. I'll try and find at least a few hours work on it next week and get it into the next 2.5.05 test build. Regards, Arthur