Reputation: 2738
I'm working on a legacy application that is written in VB6 and uses the IEFrame.dll. There is some JavaScript that is not running consistently and I'd like to write some logs somewhere to help figure out what is going on. Is this even possible with IEFrame.dll?
Upvotes: 1
Views: 222
Reputation: 13267
It might make some people cringe, but consider the following:
sample.htm
<html xmlns:custom>
<body>
<custom:generic id="Logging" style="inline:true;display:none"/>
<button onclick="Logging.innerText='Hello';Logging.click()">Click me 1</button>
<button onclick="Logging.innerText='Goodbye';Logging.click()">Click me 2</button>
</body>
</html>
Form1.frm
Option Explicit
'Reference to: Microsoft HTML Object Library
Private WithEvents Logging As MSHTML.HTMLGenericElement
Private Sub Form_Load()
WebBrowser1.Navigate2 App.Path & "\sample.htm"
End Sub
Private Sub Form_Resize()
If WindowState <> vbMinimized Then
WebBrowser1.Move 0, 0, ScaleWidth, ScaleHeight
End If
End Sub
Private Function Logging_onclick() As Boolean
Debug.Print Logging.innerText
End Function
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Set Logging = pDisp.Document.All("Logging")
End Sub
Upvotes: 2