Hur kontrollerar man med ett program om datorn har Ado drivrutierna och i så fall vilken version. På www.microsoft.com/data finns ett program som du kan köra för att se vilken version det är. En variant är även att skriva: Den funka fint, tack! Lägg inte in ADO som en reference i din application. Om du kör rutinen jag föreslog och har errorhantering på detta så vet du i alla fall om rätt version inte finns. Då kan du samtidigt installera samma version som ditt projekt ät tänkt att använda:Kontroll om pc har Ado drivers?
Tackam för hjälp!Sv: Kontroll om pc har Ado drivers?
set con = createobject("adodb.connection")
debug.print con.versionSv: Kontroll om pc har Ado drivers?
Men om man lägger till ADO som referens i programmet och den drivrutinen inte finns blir det krasch!
Jag vill göra en installations kontroll, som kontrollerar vilka drivrutiner som behövs.
Programmet skall bestämma vilken installation som kommer startas.
Tacksam för hjälp!Sv: Kontroll om pc har Ado drivers?
CreateObject("ADODB.Connection") är en 'late binding' och din applikation vet inget om ADO förän du försöker köra koden.
Ett ex på implementation kan vara så här
<code>
Private Sub main()
On Error Resume Next
Dim strMsgPrompt As String
Dim strMsgTitle As String
Dim conn1
Set conn1 = CreateObject("ADODB.Connection")
Select Case Err.Number
Case 0 'No error
With conn1
strMsgPrompt = "Provider: " & .Provider & vbCrLf & _
"Version: " & .Version
strMsgTitle = "ADO Version"
End With
Case Else
'Can't find ADO
strMsgPrompt = Err.Description
strMsgTitle = "ERROR: " & Err.Number
End Select
MsgBox strMsgPrompt, vbOKOnly, strMsgTitle
End Sub
</code>Sv: Kontroll om pc har Ado drivers?
<code>
on error resume next
set con = createobject("adodb.connection")
if err <> 0 then
' ingen ado finns
else
if con.version < "2.6" then
' då installerar vi 2.6 genom ett anrop till den
' funktion som startar shell och kör Mdac_Typ.Exe
else
' allt är lugnt, då kör vi vidare
end if
end if
</code>