Error 7005: Rowset not available

I developed a program in Visual Basic 6.0 on my desktop (W98)and now have problems running it on my laptop (W2k). The following error is displayed: 7005 - Rowset not available – and the database name is the caption. I hope someone can tell me what I do wrong.

On the desktop I have Visual Basic and Access installed. On the laptop only Access. They are both hooked onto the local network, so I copied the directory with all the files from the desktop to the laptop. Everything works on the desktop without any problem. I can run the executable file on my laptop and the program starts okay. I can go to screens without any database connection without any problem.  But with screens that references the Access database I do have problems.

I had created a table maintance form using the wizard. When loading the screen it is not loading any records in the ADODC. The datagrid stays empty too. When I choose the ‘Refresh’ button, the ADODC indicates the first record, the datagrid stays empty. I can select the ‘last record’ button it shows how much records are in the file, but still no data is shown in the datagrid.

On the form with ADODC that I created from scratch, the datagrid doesn’t load any records either. When I load that screen the message: 7005 - Rowset not available – appears with the database name as caption. That datagrid also doesn’t show any records.

All forms have the connection string build on the ADODC. I have tried to define those in the routines without any success. Therefore, I make sure the directories are the same on both desktop and laptop. The access database has no password. The dabase tables are okay when I open them using Access. They contain all the records. I tried with and without “.Cursorlocation” in the load routinte and in both cases I got the error.

The problem must be with the access database. I just don't know what. The procedure I use for loading:

Private Sub Form_Load()

strSQL = "SELECT * from Industry ORDER BY rank, industry"
strPath = App.Path & "\Stocks.mdb"

'-Build our connection string to use when we open the connection --
connectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & strPath

With DBInd1
        ' initialize our connection to the database
        .CursorLocation = adUseClient
        .ConnectionString = connectString
        .CommandType = adCmdText
        ' set up the first query
        .RecordSource = strSQL
        ' refresh the data source to make sure the query goes through.
End With

Me.MousePointer = vbDefault

End Sub

I hope someone can make my day and tell me how I can fix this.
Who is Participating?
TimCotteeConnect With a Mentor Head of Software ServicesCommented:
You would agree with me, so why lock the question with a proposed answer?

I can see that today is your first day here nickbeau so please take this the way it is intended (as friendly advice).

The "answer" button places a question in the locked section which tends to get less traffic as it has been locked with a proposed answer, use of this option is extremely deprecated and we are campaigning vigourously to get it removed or changed to prevent occurrences such as this.

Please read the guidelines on comments vs answers at the bottom of this page or at and you will understand why this should have been posted as a comment.

If you continue to post answers when comments would have been more appropriate your account will be referred to customer services by an annoyed "expert" and you may well be suspended or have your account terminated. Whilst I sincerely hope that this does not occur as I am sure that you have a contribution to make here the use of the answer button on a regular basis will cause annoyance.
TimCotteeHead of Software ServicesCommented:
But you haven't installed the application onto your laptop so you cannot be certain that all components have been properly installed and registered. Just because it seems to work does not mean that it is working properly. You MUST create an installation package if you expect an application to work properly on another machine. The most likely candidate is either the datagrid control or the ado data control that you are using.

My advice would be to use the p&d wizard to create a setup package for your application, install that on the laptop and then see what if anything doesn't work. I think you may find that everything then performs as expected.
I would agree with Tim. Just installing portions of an application on your laptop may seem successful but truly is not.

Remember, Windows 2000 comes with many of the Visual Basic 6 distributable files (or their more recent versions) as standard.


A) Create a Setup Package using the P& D Wizard as TimCottee suggests or

b) Use Depends.exe from visual studio to find all application dependencies and ensure you have the correct versions.

See DLLHell on MSDN or Technet for More detailed information (That is the issue you have)

mcpdallasAuthor Commented:
The initial answer by TimCottee was the correct one. I used the P&D wizard, copied the files to the laptop and ran Setup.exe. The program is now showing the table entries correctly.

At the moment I can only accept Nickbeau's answer, while TimCottee should have the points. Therefore, I reject this answer, so TimCottee can give a new answer and get the points

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.