Visual SourceSafe Frequently Asked Questions

Visual SourceSafe Frequently Asked Questions

Table of Contents
General: 4

1. Where can I find a list of known bugs in VSS?. 4

2. What was fixed by Service Pack 3 for Visual Studio?. 4

3. Is VSS Y2K compliant?. 4

4. VSS System Capacities — database/file sizes, number of users?. 4

5. VSS performance is extremely slow. 4

6. How can I put revision history information in the source files each time I check in a file?. 4

7. What are the tips for getting keyword expansion working?. 4

8. Are there any third party articles which compare VSS with other source code control products?. 5

9. Microsoft VSS Best Practices. 5

Administration: 5

10. How can I access VSS from a remote site over the Internet directly of via a web portal?. 5

11. How do I convert my PVCS archive to VSS?. 5

12. How do I get all users out of VSS in order to perform a backup?. 5

13. How can I lock and unlock the VSS database prior to running Analyze or backing up the database. 5

14. How can I tell which files in the database correspond to files in my project?. 5

15. What’s Analyze?. 6

16. Is there some way to get a list of errors from Analyze?. 6

17. How can I move a database or create a new one?. 6

18. How can I backup a database?. 6

19. How can I archive old projects or old versions of current projects?. 6

20. Is VSS 5.0 compatible with a 4.0 database? Do I have to upgrade all users to the new version? What about 6.0? 7

21. Does VSS 6.0 support NT’s built-in security?. 7

22. How do I get deleted files (not permanently deleted)?. 7

23. How do I rename a label?. 7

24. How do I recover from a lost administration password?. 7

25. How to require check-in comments?. 7

26. How can I automate database maintenance routines?. 7

Integration with other products: 7

27. The integration isn’t working between VSS and VB/VC. What can I do?. 7

28. How do I reconnect a project after the shared workspace file loses the project location?. 8

29. How do I disconnect VSS from a particular VC project?. 8

30. The integration isn’t working between VSS and FrontPage/Visual InterDev. What can I do?. 8

31. How does one implement SourceSafe integration with FrontPage 2000/ 8

32. What about other product integrations?. 8

33. How can I disable the integration between VSS and Visual Studio?. 8

34. How can I use SourceSafe to version stored procedures with Visual Studio 6.0 and SQL Server 7.0. 9

35. Can I use VSS on Unix or Mac systems?. 9

36. Are there any patches available for problems that occur when using VSS on a Novell share?. 9

37. Is there any information on Web Projects and Source Control Integration in Visual Studio .NET?. 9

38. How can I get around the synchronization issue such that deletes and renames from VS.NET do not get synchronize with VSS as described in Q305516. 9

Source Safe Utilities. 9

39. Is there some way to automate email notification when of VSS changes?. 9

40. What reporting packages are available for SoucreSafe?. 9

41. Is there an issue/bug tracking tool that integrates with SourceSafe?. 10

42. Are the any windows shell extensions for SourceSafe?. 10

43. How do I display a custom message box during Add Item, Check In, Ckeck Out, Undo Checkout, Branch, and Rename? 10

44. Is there a way to enable easily switching between multiple source code providers?. 10

Build/Configuration Management Strategies. 10

45. How do I ‘get’ with respect to a label?. 10

46. How do I apply a label to an older version of a file?. 10

47. How do I remove a label?. 10

48. How do I find all changes between two dates?. 10

49. How do I pin all the files within a project?. 10

Build Automation. 10

50. Automating builds using VSS.. 10

51. How do I select a database from the command line?. 11

52. Is there a way to automatically increment/synchronize my project build number and my VSS label/version? 11

Branching/Sharing.. 11

53. Where can I find some information on Branching/Sharing: 11

54. How do I reconnect a Visual C++ project after I have branched or shared it to a new location?. 11

SourceSafe API 11

55. Is there an API for VSS? Where can I get it?. 11

56. What platforms can I automate VSS using OLE?. 11

57. Where can I find the SSSCC API?. 11

58. Does VSS OLE Automation support label comments?. 11

59. Does VSS OLE Automation support pinning?. 11

60. Does VSS OLE Automation support administrative functions?. 12

61. Using the VSS OLE Automation support in ASP pages. 12

62. Is there a SourceSafe developers guide?. 12

63. Is it possible to trap file deletions and rollbacks using an add-in/VSS Ole Automation?. 12

64. How do I retrieve the comment from a specific version of a file?. 12

Other Visual SourceSafe Links. 12

General 12

Purchase. 12

Training. 13

Books. 13

Thanks. 13

Comments and Suggestions. 13

General:
1. Where can I find a list of known bugs in VSS?

· Go to MS support online (http://support.microsoft.com/) and
1. Set the product to VisualSourceSafe
2. Set the search option to keywords
3. Enter kbbug for the question

2. What was fixed by Service Pack 3 for Visual Studio?

· Search MS online support, Visual SourceSafe, for any of the following keywords, depending on the version of Visual Studio you are using and the Service Pack in which you want to research: kbVS97sp1, kbVS97sp2, kbVS97sp3, kbVS600sp1, kbVS600sp2, kbVS600sp3, kbVS600sp4, kbVS600sp5

3. Is VSS Y2K compliant?

· VSS 5.0: http://www.microsoft.com/technet/year2k/product/user_view69202EN.htm

· VSS 6.0: http://www.microsoft.com/technet/year2k/product/user_view69180EN.htm

4. VSS System Capacities — database/file sizes, number of users?

· See KBA INFO: Visual SourceSafe System Capacities and Specifications (Q138298)

·

5. VSS performance is extremely slow.

· This could be caused by having too many “Dir=” or “Shadow=” entries in one of the ini files. Try to create a directory structure on disk which matches the VSS project tree. Then clean up the extra Dir= and Shadow= entries in the .ini files. That way you only need an entry in your ini file for each “tip” project.

· If you find that VC++ is very slow now that you’re using the VSS integration, deleting the .NCB file before opening the workspace might help. VC++ 6.0 doesn’t have this problem.

· Some user have reported the use of Norton Anti Virus 2001 on Win2K significantly slows VSS down.

6. How can I put revision history information in the source files each time I check in a file?

· You need to use SourceSafe’s keyword expansion. The keyword for getting history information is $History:$. What follows is a general discussion of getting keyword expansion working. See the following FAQ for tips on how to get keyword expansion working.

7. What are the tips for getting keyword expansion working?

· Make sure that the srcsafe.ini variable Keyword_Masks is set to the appropriate file types you want to expand keywords in. (e.g. Keyword_Masks=*.cpp,*.h,*.idl)

· Remember that the keywords are case sensitive and include a colon at the end: $History:$

· If you’re using something that generates multiple lines, like $History:$, you need to have the section [Keyword Comments] set up to proper values for commenting out each line:

[Keyword Comments]
*.cpp=”// “
*.frm=”’”

· See ‘keyword expansion’ in the VSS online help for further info

8. Are there any third party articles which compare VSS with other source code control products?

· All the articles below are a little out of date but they do make some comparisons.

· PC Magazines article, Version-Control Software: Tools for managing change in complex development environments compares SourceSafe, PVCS, and StarTeam.

· Software Team Development web site, PC-Based Version Control

· Software Configuration Management survey, Configuration Management Tools Survey Results

9. Microsoft VSS Best Practices

· Microsoft has a web page listing some best practices, and another page containing their own version of frequently asked questions.

Administration:
10. How can I access VSS from a remote site over the Internet directly of via a web portal?

Set up a VPN/RAS connection between the two locations (for additional information about using VSS over a RAS or ISDN check out KBA Q158219 ) or
Purchase a third party product like SourceOffSite (http://www.sourceoffsite.com).
Try DMB Consulting’s free (for non-commercial use) VSS.NET which is available at http://www.dmbcllc.com/products.htm.
Try VssConnect 1.0, similar to SourceOffSite, it allows optimized access to a SourceSafe database using a client/architecture. Details can be found at http://www.voxcode.com.
Try SourceWeb(http://sourceweb.sekonden.se) from Sekonden.
11. How do I convert my PVCS archive to VSS?

· Use the supplied conversion utility pvcs_ss.exe. Note that this will not work with long file names, and it does not work with logfiles created by the NT version of PVCS. See KBA Q140362

12. How do I get all users out of VSS in order to perform a backup?

· The easy way is to have everyone access SS via a share. Then you can pause the share, eliminating any new access, send out a message that users are about to be dropped, then delete the share, dropping all users. Once you’re done, you can re-establish the share.

· Check out Paul D’Anna batch file at http://www.michaelis.net/SourceSafe/vsshealth.bat.txt

1. How can I lock and unlock the VSS database prior to running Analyze or backing up the database.

· Create a zero-byte file called admin.lck in the [share]\data\loggedin folder and the database is locked. Delete it when Analyze is done to unlock. Note that this will not kick out currently logged in users.

2. How can I tell which files in the database correspond to files in my project?

· You really shouldn’t need to do this. SourceSafe’s database should be considered a closed database. The fact that you can view files which correspond to your source files is sometimes a convenience, though. If you’ve run the analyze.exe program and want to know which file in which project is causing the problem, there is a command that will tell you which file(s) to look at. From the WIN32 subdirectory, use the ss.exe command line program and the “PHYSICAL” option. Here is an example:

SS PHYSICAL $/Project/file.cpp

· The project/file specification can be a single file or a project (or even the root project — $/ — if you want a listing of the whole database). You can also use the -r switch to make the command recurse through the project tree.

3. What’s Analyze?

· Analyze.exe is Visual SourceSafe’s database maintenance program. This should be run regularly (suggestions range from nightly to monthly). It can repair damaged databases as long as no users are logged on (use the -f command line option). It also has an option for deleting unused files, which will recover space taken up in the database by files and projects that have been purged (-d option). A compress option, -c, will perform some compression on the database where possible. Four levels of verbosity (-v1, -v2, -v3 and –v4) give plenty of usually cryptic information (see KBA Q152807 for explanations of many of these messages). Other options can be seen by typing ‘analyze -?’. Each time analyze is run, it requires a clean directory to store backup files. The default is the folder under the data directory called ‘backup’. If this directory isn’t empty, analyze won’t run.

4. Is there some way to get a list of errors from Analyze?

· Check out KBA Q176909

5. How can I move a database or create a new one?

· To move a database, refer to the KBA Q176909 HOWTO: Move a VSS Database or Project to New Location.

· To create a new database, refer to KBA Q123467 How to Create a New Database in SourceSafe.

· Note that in addition to the instructions in Q123467, you also need to create a new srcsafe.ini file, users.txt file and temp and users directories. The srcsafe.ini file and the users.txt file can be copied from an existing installation and then edited: Remove everything from the srcsafe.ini file except Data_Path, Temp_Path, Users_Path, Users_Txt, and File_Types in the new version. Remove all users from users.txt except Admin and Guest. Also, create a guest and admin directory in the users directory. Copy the template.ini file from the users directory of your existing installation to the users directory. Place a copy of the template.ini file in both the admin and guest directory. Rename both of these copies to ss.ini. Copy ssadmin.ini from your current database to the users\admin directory.

· To change the name of a database, refer to KBA Q175950

6. How can I backup a database?

· Make sure that no one is using the database and that Analyze will not begin to run while you are backing up the database. Use any backup utility to copy the \DATA, \LABELS, and \USERS directories.

· See Chuck Kollars web site for further suggestions and a sample .bat file to secure and backup the database.

· Some VSS administrators have suggested using SSARC as a way to backup the database. Use SSARC -d- $/ to archive without deleting any files. You would then use SSRESTOR to restore the corrupted database.

· To backup the database to a CD, you must have all the non-data folders on the hard drive and modify the srcsafe.ini to point the data path to the CD.

· For an automated backup batch file checkout http://www.codeproject.com/tips/autovssbackup.asp.

7. How can I archive old projects or old versions of current projects?

· Use the SSARC and SSRESTOR programs. Version 6.0 has a GUI interface to these programs making them easier to use. Also, be careful when restoring to a database that was created by copying an existing database and then deleting all files and projects in it: Read Q176780 – Use Guidscan.exe to View or Change GUID in a VSS Database

8. Is VSS 5.0 compatible with a 4.0 database? Do I have to upgrade all users to the new version? What about 6.0?

· For 5.0 vs. 4.0 compatibility, read KBA Q176553

· Version 6.0 can read and write 5.0 databases, and has an option to upgrade or use a new database format. Using this new format gives you the new label promotion feature, but cannot be read by anything earlier than 6.0 (You’ll have to upgrade everyone if you want to use the 6.0 database format). There are also some performance enhancements with the new 6.0 version of the database.

9. Does VSS 6.0 support NT’s built-in security?

· No. The users NT logon name is used by default when starting VSS but this is the only integration. All NT users who wish to use VSS as well need to be added separately by the VSS administrator.

· For information about required network rights check out Q131022 – INFO: Required Network Rights for the SourceSafe Directories.

10. How do I get deleted files (not permanently deleted)?

· From SS Explorer select the project folder which contained the deleted file.

When on a project folder, click on Show Properties, then select the Deleted Items Tab.

Find the deleted file and click on Recover.

· From the command line use the SS GET command on the parent project. Do not list the files or use *.* in the get.
For example, the following command will get files including deleted files.

SS GET $\MASTER\PROJ1 -VLOldLabel

However, the following command will not get the deleted files:

SS GET $\MASTER\PROJ1\* -VLOldLabel

11. How do I rename a label?

· This one is not intuitive. From within the VSS Explorer, perform the following steps (Steps are for VSS 6.0. Steps are similar for 4.0 and 5.0):

1. Select the project that has the label that you want to rename.

2. Click on the Show History button.

3. Check Include Labels and Show Labels

4. Uncheck Include File Histories and optionally select a date to search back to. Click OK.

5. In the History dialog box, find and select the label to be renamed and click Details.

6. In the History Details dialog box, select the label and change it to the new name. Click Close on all dialog boxes.

12. How do I recover from a lost administration password?

· Check out the newsgroup posting HOWTO: Reset VSS 6 Admin Password by Paul Gurtler.

13. How to require check-in comments?

· You can coax/encourage users but it is virtually impossible to force them. For a full (sometimes humorous) discussion see How to require check-in comments?

14. How can I automate database maintenance routines?

· Check out Paul D’Anna batch file at http://www.michaelis.net/SourceSafe/vsshealth.bat.txt

· Check out the script found at http://www.seanet.com/~shardy/cm/vssmaint.htm.

Integration with other products:
15. The integration isn’t working between VSS and VB/VC. What can I do?

· Make sure you’re using the latest version of VSS with the latest Service Pack or at least the most recent older version (with the latest Service Pack). You’ll need this much before Product Support can help you (if you still can’t get it working). Reinstalling is one option.

· To search for articles relating to Visual C++ integration, search for the keyword: SSVC

· To search for articles relating to Visual Basic integration, search for the keyword: SSVB

16. How do I reconnect a project after the shared workspace file loses the project location?

· Check out KBA Q192625, “PRB: VC++ Shared Workspace File Loses Project Locations”

17. How do I disconnect VSS from a particular VC project?

· Check out KBA Q180945, “HOWTO: Disconnect a Project from Source Control”

18. The integration isn’t working between VSS and FrontPage/Visual InterDev. What can I do?

· Read the KBA: Q157883 – How Can I Get VSS and Visual InterDev Integration Working? that also includes a reference to FrontPage integration.

· Also see Q241963 – INFO: SourceSafe Integration Changes with 2000 Server Extensions and Q231612 – HOWTO: Use a Single SourceSafe Database with Multiple Web Servers

· To search for other articles relating to FrontPage integration, search for the keyword: SSFP

· To search for other articles relating to Visual InterDev integration, search for the keyword: SSIDEV

· Check out VI and VSS integration hell! for one users take on solving this.

19. How does one implement SourceSafe integration with FrontPage 2000/

· It would appear that the information provided in the FP2K user guide with respect to integrating FP2K and Visual SourceSafe inadvertently applies to the previous version (FrontPage 98) and not FP2K.

· The following instructions should help in setting up FrontPage 2000

1. Use FrontPage 2000 to create your web

2. Add the web folder to VSS as a new VSS Project

3. Set the VSS Project as a Web Project in VSS Administrator

4. Open the Server Extensions Administrator [Start-Programs-Microsoft Office Tools]

5. Expand folders to reveal the web site folder that was added as a VSS Web Project

6. Right Click this web site’s folder and choose Properties

7. Set Version Control to External

(Thanks to Tom Christian of Microsoft VSS Support for this solution)

20. What about other product integrations?

· VSS Integration with Visual FoxPro
To search for articles relating to Visual FoxPro integration, search for the keyword: SSFOX. Also check out VisualSourceSafeIntegration.

· VSS integration with Access:
To search for other articles relating to Access integration, search for the keyword: SSACC

· VSS Integration with Office products
There are some office add-ons amongst the code samples located at : http://agent.microsoft.com/officedev/index/vss.htm

· Integration with Borland’s Delphi & C++ Builder
Try VssConneXion from EPocalipse Software.

· Integration with Microsoft Access
See http://www.microsoft.com/accessdev/Tips/octtip3.HTM

·

21. How can I disable the integration between VSS and Visual Studio?

· Under the registry key: HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Source Control (for Visual Studio 6.0) or HKEY_CURRENT_USER\Software\Microsoft\DevStudio\5.0\Source Control (for Visual Studio 5.0) , change or created the entry:
Name: Disabled
Type: REG_DWORD
Data: 0x1
(All the warnings about working in the registry apply.)

22. How can I use SourceSafe to version stored procedures with Visual Studio 6.0 and SQL Server 7.0.

· Check out Versioning Stored Procedures with Visual Studio 6.0 and SQL Server 7.0

· Embarcadero also includes some SQL/SourceSafe integration: http://www.embarcadero.com/news/sqlsourcesafe.asp

· Also check out Adding a Stored Procedure to Source Control in Data ViewAdding a Stored Procedure to Source Control in Data View.

23. Can I use VSS on Unix or Mac systems?

· Contact Metrowerks for their port of VSS to the Macintosh. Note that Dream Weaver integration is also available according to http://www.macromedia.com/support/dreamweaver/site/source_safe_mac/.

· Contact MainSoft for their port of VSS to Unix. There is information about this product at http://www.hallogram.com/mainvissourcesafe/index.html as well.

24. Are there any patches available for problems that occur when using VSS on a Novell share?

· nt483pt2.exe seems to be the cure for some. You can find it at http://support.novell.com/filefinder/14232/index.html.

25. Is there any information on Web Projects and Source Control Integration in Visual Studio .NET?

· Certainly, check out Web Projects and Source Control Integration in Visual Studio .NET.

26. How can I get around the synchronization issue such that deletes and renames from VS.NET do not get synchronize with VSS as described in Q305516.

· Check out SyncVss from the Creekside Technology Group at http://www.thecreeksidegroup.com.

Source Safe Utilities
27. Is there some way to automate email notification when of VSS changes?

· Check out Giant Technologies Visual SourceMail (http://www.giant-technologies.com/sourcemail/).

· Check out Visual SourceVizor (http://www.sourcevizor.com/).

· See TwoTree’s Visual SourceMail (http://www.twotree.com/index.htm)

· Try CMNotify at http://www.cryptomonkey.com. CMNotify is an NT Service that runs in the background and monitors changes to a VSS database. When any change happens, you are notified by email what has occurred, when it occurred, and who is responsible for the change.

· Check out SAMPLE: VSSAddin.exe Notifies Administrator of SourceSafe Events (http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q220971).

· Another option is to use the RSS Feed option available at http://www.rassoc.com/gregr/weblog/archive.aspx?post=615.

28. What reporting packages are available for SoucreSafe?

· Check out Visual SourceVizor.

· Try the free (with source code) VssReporter (http://www.codeproject.com/useritems/vssreporter.asp).

29. Is there an issue/bug tracking tool that integrates with SourceSafe?

· Elsinore Technologies has a product called Visual Intercept

· See MetaQuest’s Census

· See DevTrack from http://www.techexcel.com

· Check out a Visual C++/SourceSafe Change and Build Tracer at http://www.codeguru.com/devstudio_macros/tracer.html

30. Are the any windows shell extensions for SourceSafe?

· Effective SourceSafe – shell extension for SourceSafe: http://www.codeproject.com/useritems/ess.asp

31. How do I display a custom message box during Add Item, Check In, Ckeck Out, Undo Checkout, Branch, and Rename?

· Check out the plugin (http://www.qualcode.com/FreeVSSPlugin.htm) from QualCode (www.qualcode.com)

32. Is there a way to enable easily switching between multiple source code providers?

· Check Sourcecode Control Switcher by Soenke Schau at http://www.codeproject.com/useritems/sccswitcher.asp.

Build/Configuration Management Strategies
33. How do I ‘get’ with respect to a label?

· Need to use the ‘-v’ switch with an ‘L’ after it to indicate a label (-R is for recursive):

SS GET $\project -VLmylabel -R

34. How do I apply a label to an older version of a file?

· You must first pin the file at the older version (Show History, select the version of interest and click “Pin”.) Then apply the label to the parent project. The label will be applied to the “tip” revision of the unpinned files, but to the older version of pinned files. Then Unpin the file. The label ‘sticks’ even after the pin is removed.

35. How do I remove a label?

· This one is not intuitive. From within VSS Explorer, select the project, show history, check Labels Only, find the label of interest, click on Details, select the label text and delete it. Click Close, which will ask if you are sure you want to change the label. Click Yes and you’re done.

36. How do I find all changes between two dates?

· Here’s how to get a list of everything that has changed since a particular date and time from the command line. In the command “a” or “p”, refers to a.m. or p.m. respectively. And the ~ is used to indicate you want the history between the dates and times specified. Note that the later date and time must be specified first. -R makes it recursive.

SS HISTORY $/mybranch -R -VD3/03/95;3:00p~3/03/95;9:00a

37. How do I pin all the files within a project?

· You can do this using the command-line pin parameter and the wildcard character for the file name. For example:

SS PIN $/MyProject/*.* -VLver1

Build Automation
38. Automating builds using VSS

· See the excellent site developed by Chuck Kollars, http://www.ckollars.org/vss.html, and his auto-build information here: http://www.ckollars.org/autobld.html.

39. How do I select a database from the command line?

· You can set the SSDIR environment variable to point to the location of the database’s SRCSAFE.INI file.

· Chuck Kollars discusses the tradeoffs of a single vs multiple databases at his website.

40. Is there a way to automatically increment/synchronize my project build number and my VSS label/version?

· Chuck Kollars’ utility supports this feature http://www.ckollars.org/autobld.html.

· Also check out an article by Curt Blackmon titled An Automatic Build Incrementer for VC6.

Branching/Sharing
41. Where can I find some information on Branching/Sharing:

· Check out What is sharing, branching and merging? and KBA Q157982 Understanding Promotions.

· Also see Chuck Kollars’ excellent discussion of the tradeoffs between Pinning and Branching:

42. How do I reconnect a Visual C++ project after I have branched or shared it to a new location?

· Check out KBA Q173065 Problems After Branching Integrated DevStudio Projects.

SourceSafe API
43. Is there an API for VSS? Where can I get it?

· VSS provides an OLE Automation interface. Details can be found at:

· VSS automation: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvss/html/vssauto.asp

· Monitoring VSS Events: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvss/html/msdn_vssole.asp

· Code Samples: http://msdn.microsoft.com/ssafe/downloads/samples.asp

· C# Sample: C#/.NET Sample

44. What platforms can I automate VSS using OLE?

· See KBAQ157983 INFO: Platform Considerations with OLE Automation

45. Where can I find the SSSCC API?

· Microsoft discourages the use of the SSSCC API. Instead they propose you use the OLE Automation interface.

· However, if you still wish to use the API you can request the MSSCCI spec by writing to msscci@microsoft.com. They will send you the NDA you need to sign to get the spec, and then send you the spec.

46. Does VSS OLE Automation support label comments?

· VSS 6.0 fully supports label comments. Label comments, however, are not available in VSS 5.0. For more information check out KBA Q176353 http://support.microsoft.com/support/kb/articles/q176/3/53.asp

47. Does VSS OLE Automation support pinning?

Check out Q258146 – HOWTO: Pin and Unpin Files in Visual SourceSafe from OLE Automation in Visual Basic.
48. Does VSS OLE Automation support administrative functions?

VSS 6.0 supports some administrative functions. Read the specification and look at the samples.
49. Using the VSS OLE Automation support in ASP pages

Check out the MSDN article Virtual Source Code Control Systems: Promoting and Managing Projects using Visual SourceSafe.
Check out the MSDN article titled “A Tale of Real-world Debugging” in which Matt Pietrek describes the pain he encountered when trying to access VSS from ASP.
Michael A. Entin has provided some sample code for accessing VSS using ASP pages.
Important Note: that IIS runs under the security of the local system account and, therefore, it does not have access to the remote computer where the you may have your VSS database located. To over come this you need to either explicitly connect to the remote share using the WshNetwork object found in the Windows Scripting Host runtime. Alternatively, check out HOWTO: Accessing Network Files from IIS Applications (Q207671).
50. Is there a SourceSafe developers guide?

Check out KBA Q142823
Team Development with Visual Sutio.NET and SourceSafe: http://msdn.microsoft.com/library/?url=/library/en-us/dnbda/html/tdlg_rm.asp.
51. Is it possible to trap file deletions and rollbacks using an add-in/VSS Ole Automation?

These events are not supported as of this posting by Rich Knox of Microsoft: Trapping Rollbacks/Deletions.
52. How do I retrieve the comment from a specific version of a file?

This requires that you iterate through each version of the file looking for the label you want. Once the correct version of the file is identified you can retrieve the comment for that version. Below is some sample VB code demonstrating this:
For Each objVSSVersion In objVSSObject.Versions

If objVSSVersion.Action = “Beta 1” Then

MsgBox(objVSSVersion.LabelComment)

End If

Next

Other Visual SourceSafe Links
General
VSS homepage: http://msdn.microsoft.com/ssafe

VSS Product Overview: http://msdn.microsoft.com/ssafe/Prodinfo/?RLD=25

Official VSS FAQ: http://msdn.microsoft.com/ssafe/technical/techfaq.asp

VSS Product Support: http://msdn.microsoft.com/ssafe/technical/support.asp

VSS KnowledgeBase: http://search.support.microsoft.com/kb/c.asp?LNG=ENG&SA=MSDN&spr=vss

VSS Support Highlights: http://support.microsoft.com/directory/content.asp?ID=FH;EN-US;vss&FR=0&SD=GN&LN=EN-US&CT=SD&SE=NONA

MSDN VSS Technical Articles: http://msdn.microsoft.com/ssafe/technical/articles.asp

Purchase
Microsoft: http://msdn.microsoft.com/ssafe/Prodinfo/purchase/Pricing.asp

Amazon: http://www.amazon.com/exec/obidos/ASIN/B00002SFLN/ref=pd_sbs_b_1/002-9316511-0289613

Provantage: http://www.provantage.com/FP_48550.htm

GSA: http://gov.beyond.com/cgi-bin/search.htm?os=&mfg_part=&sku=&category=&license=&internal=&purchase=&name_desc=sourcesafe&cat=&mfg_name=&media=ANY&catand=P001&Query.x=11&Query.y=10

Training
Training Videos: http://www.hallogram.com/keystone/vss/index.html
CaseExtensions offers source safe training and help
Also try Xpertise Training at http://www.ariseducation.com/.
Books
Essential SourceSafe by Ted Roche, Published by Hentzenwerke Corporation. (ISBN: 1930919050)
VSS for Web Management by Steve Banick and Chris Denshikoff, Published by QUE (ISBN: 0789712334)
Thanks
Thanks to all the regular readers and contributors of all the different iterations of the Microsoft Visual SourceSafe newsgroup (Currently public.microsoft.visual.sourcesafe) for their contributions to this FAQ.

Comments and Suggestions
Please send any comments or suggestions regarding this page to

Last Updated June 4, 2005

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s