Halloj!
Jag har haft lite problem nu med en ActiveX-komponent som jag ska köra XML genom. @nders har gett mig ett par visa ord, men problemet kvarstår dock...
Jag vill genom komponenten kunna antingen skapa ett nytt eller redigara ett befintligt XML-dokument, där jag ska logga olika fel via en ASP-sida.
Subben som jag har problem med ser ut så här:
Public Sub Log(ByVal strLogFile As String, ByVal strError As String)
On Error Resume Next
Dim objXML As MSXML2.DOMDocument
Dim objRoot As MSXML2.IXMLDOMElement
Dim objNew As MSXML2.IXMLDOMElement
Dim objEvent As MSXML2.IXMLDOMElement
Dim bFileExisted As Boolean
Set objXML = New MSXML2.DOMDocument
objXML.async = False
If FileExists(strLogFile) Then
bFileExisted = True
objXML.Load(strLogFile)
Set objRoot = objXML.documentElement
Else
bFileExisted = False
Set objRoot = objXML.createElement("EventLog")
objXML.appendChild(objRoot)
End If
Set objNew = objXML.createElement("Event")
objRoot.appendChild(objRoot)
Set objEvent = objXML.createElement("File")
objEvent.Text = objRequest.ServerVariables("SCRIPT_NAME")
objNew.appendChild(objEvent)
Set objEvent = objXML.createElement("Date")
objEvent.Text = Now()
objNew.appendChild(objEvent)
Set objEvent = objXML.createElement("Error")
objEvent.Text = strError
objNew.appendChild(objEvent)
If Not bFileExisted Then
Dim objPI As MSXML2.IXMLDOMProcessingInstruction
Set objPI = objXML.createProcessingInstruction("xml", "version='1.0' encoding='ISO-8859-1'")
objXML.insertBefore objPI, objXML.childNodes(0)
Set objPI = Nothing
End If
objXML.Save(strLogFile)
Set objEvent = Nothing
Set objNew = Nothing
Set objRoot = Nothing
Set objXML = Nothing
If Err Then
With objResponse
.Clear
.Write "Error<br>"
.Write Err.Description
.End
End With
End If
End Sub
Felmeddelandet jag får är:
Object doesn't support this property or method
Men det hinner skapas ett XML-dokument, som innehåller process instruktionen, trots felmeddelandet.
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
[Redigerat av SPiN den 23 okt 2001]