Problem beim Auslesen eines HTMLDocument

mikels

Grünschnabel
Hallo,
ich habe Probleme, Dokumente von ganz bestimmten Frames auszulesen. Meistens funktioniert es, bei manchen HTML-Dokumenten erscheint jedoch die Fehlermeldung:

An unhandled exception of type 'System.UnauthorizedAccessException' occurred in microsoft.visualbasic.dll

Additional information: Zugriff verweigert


Ich hoffe, jemand kann mir da helfen.
Viele Grüsse
mikels

Code:
Private Function GetFormContent(ByVal objDocument As mshtml.HTMLDocument) As String
    If objDocument.frames.length > 0 Then
        GetFormContent = objDocument.frames.item(0).document.documentElement.outerHTML()
    End If
End Function
 
Ich habe nun endlich herausgefunden, warum diese Fehlermeldung erscheint. Also, der Fehler tritt auf, wenn sich das Frame-Dokument auf einer anderen Domain befindet.

Bsp.

http://www.domain1.com/startup.html
HTML:
<html>

  <frameset rows="*">

    <frame name="mainframe" src="www.domain2.com/home.html">

  </frameset>

</html>


http://www.domain2.com/home.html
HTML:
<html>

  <body>

    <p>hallo Welt!</p>

  </body>

</html>


Gut, wo sich das Problem befindet, weiss ich jetzt. Was ich aber immer noch nicht weiss, ist, wie ich es beheben kann.
Ich wäre wirklich froh, wenn mir jemand mit diesem Problem weiterhelfen könnte.

mfg
mikels
 
Hi,

Ich habs durch Zufall gefunden und bei mir funktionieren die Sachen.
Probiere es einfach mal aus.

http://www.tutorials.de/forum/visua...iff-auf-webseite-mit-sessionid-mit-c-net.html

Code:
private static string getHTML(string URL)
{
WebRequest myRequest = WebRequest.Create(URL);
WebResponse myResponse = myRequest.GetResponse();
Stream respStream = myResponse.GetResponseStream();
StreamReader reader = new StreamReader(respStream);
string HTML = reader.ReadToEnd();
reader.Close();
respStream.Close();
myResponse.Close();
return HTML;
}
 
Danke erstmal für die Antwort.

Hmmm, irgendwie begreif ich nicht ganz wie man mit diesem Code Frames auslesen soll. Für mich sieht das eher aus, als würde man damit auf eine ziemlich komplizierte Weise das HTML-Document von der angegebenen Url herauslesen, aber nicht von einem Frame.

Ich habe inzwischen auch nach Lösungen weitergesucht und habe eine Möglichkeit gefunden das Problem zu lösen. Hier die Beschreibung.

mfg
Mikels
 

Neue Beiträge

Zurück