Hej, Det stämmer, resultatet borde bli något sånt här: tackar, nu funkar det.. någotsånär iaf.. Nästa fråga...anropa/använda VB dll från ASP
denna fråga kan låta väldigt dum för en som är insatt i detta.
Jag har en excel-fil med en del makron (VB)... I makrona anropas funktioner som finns i en dll-fil (pmdataserver.dll):
i makrot står bla...
Dim pmServ As PMServer
ConnectToServer(pmHand, pmServ)
Function ConnectToServer(pmHand As pmHandler, pmServ As PMServer) As Boolean
Dim status As Long
Call pmHand.GetCentralServer(pmServ, status)
If status <> 0 Then
...
End Function
Jag har ingen aning om vad som står i dll-filen (men skulle gärna vilja veta).
Nu är det så att jag ska omvanla VB-koden i makrot till VBS/JS språk som jag kan använda i min web-applikation.
Går detta öht eller är jag helt ute o cyklar?? Om inte, hur göra jag detta lättast? kan ni ge mig nåra tips på vägen??
läste att man skulle köra med
set oVar = server.createobject("pmdataserver.PMserver") stämmer detta? är PMserver en "class"?
MvH,
HbSv: anropa/använda VB dll från ASP
Dim pmServ
Set pmServ = server.createobject("pmdataserver.PMserver")
ConnectToServer pmHand, pmServ
Function ConnectToServer(pmHand, pmServ)
Dim status
Call pmHand.GetCentralServer(pmServ, status)
If status <> 0 Then
...
End Function
/JohanSv:anropa/använda VB dll från ASP
Det som skiter sig är variabeltyper..:
Set pmServ = server.createobject("pmdataserver.pmHandler")
'Detta fungerar
Response.Write pmServ.LogLevel 'status & " - " & pthtype
'Men EJ detta:
pmServ.GetStatusText 0, statustxt, status
Feltyp:
Körningsfel i Microsoft VBScript (0x800A000D)
Inkompatibla typer: 'GetStatusText'
Sub GetStatusText(i_Status As Long, o_StatusText As String, o_Status As Long)
Medlem i PMDataServerLib.PMHandler
method GetStatusText
Vad är det för fel?Sv: anropa/använda VB dll från ASP
I Excel-makrot finns detta:
Dim pmHand As New pmHandler
Dim pmServ As PMServer
ConnectToServer(pmHand, pmServ)
....
Function ConnectToServer(pmHand As pmHandler, pmServ As PMServer) As Boolean
Call pmHand.GetCentralServer(pmServ, status)
End Function
där
Class PMHandler
Medlem i PMDataServerLib
PMHandler Class
Medlemmar i PmHandler: CheckPath, GetAnyServer...osv..
Nu vill jag alltså göra exakt samma sak men i VBS.
Set pmServ = server.createobject("pmdataserver.PMserver")
Set pmHand = server.createobject("pmdataserver.pmHandler")
pmHand.GetCentralServer pmServ, status
felet blir: Feltyp:
Körningsfel i Microsoft VBScript (0x800A000D)
Inkompatibla typer: 'GetCentralServer'
Varför fgår det inte? vad är det för fel? och hur kan jag gå runt det !?
Alla förslag är mer än värdfulla.