This is how I do it, you take the media disk for whatever version, copy the GAC folder from it's structure and name it "Act 7.0 GAC" and put it somewhere, doesn't really matter where, somewhere central, and do that for whichever versions you build against, then just add those dll's to your project, thus allowing you to compile against whatever version, regardless of which particular version you actually have installed.
Second part, .net 1.1 and .net 2.0, for actual programs that function outside of Act!, I've had issues with things compiled against 1.1 versions of act not being able to log in to 2.0 versions of Act! databases. Note: This is probably something I'm just doing wrong, but to make it simple, I just compile two versions, since most of my work is custom plugins. That being said, if you are writing an actual Act! plugin that loads with Act, you shouldn't have any issues running something compiled against Act 7.0.0 on Act 10.0.2. There are a couple changes that make this not entirely true, but they all involve the Opportunity classes, avoid those and you should be _ok_
Nick Bohne
Effective Solutions, Inc.