Documentation Sections

Functionality Specs

Class Description


Working Examples

Project Description

This is a very small, but potentially very useful, .Net assembly that wraps the Vault Source Control .Net API. To run it you will need the Sourcegear Vault API Libraries at and the runtime files for the .Net Compiler for VFP (aka VFP.Net). The assembly itself, VaultAPI.dll, is accessible from any CLI-compliant language. The assembly can also be run inside VFP, using the .Net Extender for VFP (

But Why Write It In VFP.Net?

Well, we all have our favorite work environments. If I'm lucky, in a couple of years I'll have replicated the efficiency of the work environment I have in VFP (which is Visual FoxPro, in case you're wondering, and has now as of 31JAN2010 reached the end of normal support in the Microsoft lifecycle -- in other words, it is abandoned). It's more than just holding on to the past; it's about a way of developing where most time is spent doing things with data rather than figuring out how to do things with data. Well, that's my take on it, anyway. Even if you vehemently disagree, you can still use the .dll in your .Net application, and for you that would be what counts. VFP.Net (not its real name) brings the VFP language alive, and growing, into the .Net ecology. I have no stake in it, except as a happy user, in case you're wondering.

Why Isn't It Written In <<myFavoriteLanguage>>?

Because you haven't written it. The hard part, for me at least, was digging through the sparse documentation, and the few examples, and putting everything together. You should be able to take the code here and turn it into your favorite language in a small fraction of the time required for me to get things working. Have at it!

Why would I use Vault instead of <<myFavoriteSourceControl>>?

That's not a question for this project to answer, if you know what I mean. We all have our reasons for our choices. This project assumes you've already made your choice, for whatever reason.

Codeplex doesn't use Vault; so what are you using for this project?

This project is inside the VFP Developer Studio for .Net, which is a modified version of SharpDevelop (which is a Codeplex project also). SharpDevelop has built-in hooks for SubVersion, so that worked out very nicely. Of course it meant I had to learn SubVersion, but their helpfile is nicely organized. It's nowhere as fast as Vault, but what can you expect? <s>

Can you explain why you did <<thatInexplicableCode>> in <<thatMethod>>?

I'll be glad to try: start a discussion and we can discuss it. This has been a learning experience for me, and we'll all learn something if you ask questions.

Last edited Feb 8, 2010 at 2:46 PM by HankFay, version 15


No comments yet.