ID: Q169331
The information in this article applies to:
RecomputeRepository returns an error if it is run against a database created by the UML.DLL.
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This has been fixed with in Visual Studio Service Pack 1.
For additional information about the Visual Studio 97 Service Pack 1, please see the following article in the Microsoft Knowledge Base:
ARTICLE-ID: Q170365
TITLE : INFO: Visual Studio 97 Service Packs - What, Where, and Why
The engine has changed get_item for collections starting in Visual Studio Service Pack 1 so that items can only be retrieved using OBJID's, names and indexes. Previously the Repository allowed initids to be used. ReComputeRepository previously depended on this functionality. Now, the ReComputeRepository function uses OBJID's to get items.
1. Start a new Standard EXE project. Add MODULE1.BAS.
2. Type the following code into MODULE1.BAS:
Declare Function ReComputeRepository Lib "RepUtil" (ByVal szPath _
As String, ByVal szUser As String, ByVal szPwd As String) As Long
Sub Main()
'change the following path to the windows location for
'your machine
Dim lngRet As Long
sPath = "c:\WINDOWS\msapps\repository.mdb"
lngRet = RecomputeRepository(sPath,"","")
MsgBox "The return value is (" & lngRet & ")!"
End Sub
2. Run the code.
Results:
Keywords : kbVBp500 kbVS97sp1fix kbVS97sp2fix kbvbp500sp1fix kbvbp500sp2fix
Version : 5.0 97
Solution Type : kbfix
Last Reviewed: December 20, 1997