Source Control

Add-in Express™ Support Service
That's what is more important than anything else

Source Control

Posts: 30
Joined: 2005-09-04
I'm trying to check-in the whole solution (all 3 projects) into source control. It keeps complaining that the root is the C:\. It appears to not like the way the setup project is configured. If I just add the main project and the shim project everything checks in fine. Anyone else had any problems?
Posted 28 May, 2006 04:21:29 Top
Sergey Grischenko

Add-in Express team

Posts: 7233
Joined: 2004-07-05
Hi Andrew.

Is the setup project located in the subfolder of the add-in project folder?
Posted 29 May, 2006 11:51:20 Top

Posts: 30
Joined: 2005-09-04
Yeah if you make a new ADX solution and don't touch anything it won't check in correctly. The setup projects sits in the main directory with the add-in project file and at the same level as the shim projects folder. It appears that the 2 extensibility dlls are the problem.
Posted 29 May, 2006 13:57:25 Top

Posts: 30
Joined: 2005-09-04
I'm still having trouble with this and as such we can't have the solution or setup project in source control, only the addin and shim projects. Anyone else have this problem and work through it?

Posted 01 Jun, 2006 13:37:58 Top
Brad Smith

Posts: 49
Joined: 2005-11-22
SourceSafe, especially the integration with Visual Studio, is quite brain-dead. It never does quite what you want.

Here's what you can do to solve the problem (these instructions are for VS.NET 2005, it might be different for 2003):

- Go under File|Source Control|Change Source Control
- Click "Unbind" for everything to *remove* the VSS bindings
- Go into the VSS client and delete the entire project

(at this point you're starting from scratch. If you're working with a new project, start from here)

- Before you do *anything* else, select the DLLs added in the Setup project. That includes the ADX.NET DLLs, Office.dll & stdole.dll.
- Under File|Source Control click "Exclude selection from Source Control". This is the vital step.
- Also, if you've built once, in the Shim project you'll find a "Generated Files" folder with two *_i.c files. VS is smart enough to know these are generated files, but not smart enough to know that maybe they shouldn't go under source control. Select these and choose "Exclude selection..." as well.
- *Now* right-click on the Solution and choose "Add to Source Control"
- Log in to VSS as usual, and I normally select "$/" as my "root".
- Let it do its thing

Back in VS.NET, you should see the icons for the DLLs you selected earlier set to red bubbles to indicate they're excluded.

Tip: Visual Studio has an annoying habit of using hard-coded paths to auxiliary files like the ADX.NET ones. If you have other developers on your team, they all need to install ADX.NET to the same folder lest there be trouble. You may be able to hand-tune the .vdproj to point to a relative path, but VS also has an annoying habit of "fixing" things to other than what I wanted.

As you can tell, I've spent *many* an hour undoing SourceSafe screwups. Normally once you get past the initial hurdle of setting it up the way you want, it goes pretty smoothly after that.

Posted 01 Jun, 2006 14:22:23 Top

Posts: 30
Joined: 2005-09-04
This worked perfect. Thanks Brad. Good stuff, everyone should bookmark this.

I use Vault and your instructions were spot on.

We mainly do ASP.NET dev so this excluding stuff is new, but I like it.

Thanks again!
Posted 01 Jun, 2006 15:13:13 Top