Seite 2 von 2

Verfasst: 07.06.2006 22:29
von Kiffi
> Mir egal, aber ich brauche nur den MD5FileFingerprint() des
> HTML-Codes.

wäre Dir auch ein VBScript recht, welches mit der neuen Lib von ts-soft
aufgerufen werden kann? Dann würde ich Dir mal eben so was
zusammenbauen.

Grüße ... Kiffi

Verfasst: 07.06.2006 22:34
von PBZecke
Ich kann die Forumseiten und die von Dir aufgeführten Links auch nicht mittels Deines Beispielcodes laden. Laden kann ich jedoch Seiten die nicht
dynamisch erzeugt werden, wo zb. eine index.html real physich existiert.

Warum Kiffi das laden kann weiß ich nicht :freak:

>> Ist das eine gesicherte Erkenntnis?

Eine allgemein gültige sicherlich nicht, für mich persönlich schon,
bis mir einer das Gegenteil beweist.

Verfasst: 07.06.2006 22:46
von AND51
Kiffi hat geschrieben:> Mir egal, aber ich brauche nur den MD5FileFingerprint() des
> HTML-Codes.

wäre Dir auch ein VBScript recht, welches mit der neuen Lib von ts-soft
aufgerufen werden kann? Dann würde ich Dir mal eben so was
zusammenbauen.

Grüße ... Kiffi
Joah, das wär mir auch Recht. Die einzige Bedingung ist nur, dass es möglichst 100%ig funktionieren soll auf Windows).

Was mir lieb wäre, ist, wenn man es irgendwie in die EXE inkludieren kann, muss aber nicht sein (Ich steh halt auf Standalone-EXE, wenn es nur kleine Tools sind). Wenn du willst, dann nehme ich dich mit in mein Programnm auf, also etwa so: "Thanks to Kiffi" oder so...

Verfasst: 08.06.2006 00:12
von Kiffi
Hier ist der Code:

Code: Alles auswählen

Procedure.s GetHtmlVbs(URL$)
  
  Dummy$ = "Set myIE= CreateObject(" + Chr(34) + "InternetExplorer.Application" + Chr(34) + ")" + #CRLF$
  Dummy$ + "Do While myIE.Busy" + #CRLF$
  Dummy$ + "Loop" + #CRLF$
  Dummy$ + "myIE.Visible = 0" + #CRLF$
  Dummy$ + "myIE.Navigate " + Chr(34) + URL$ + Chr(34) + #CRLF$
  Dummy$ + "Do While myIE.ReadyState <> 4" + #CRLF$
  Dummy$ + "Loop" + #CRLF$
  Dummy$ + "myHtml = myIE.Document.documentElement.outerHTML" + #CRLF$
  Dummy$ + "Set myIE = Nothing" + #CRLF$
  
  ProcedureReturn Dummy$
  
EndProcedure

SCtr_SetLanguage("VBScript")
SCtr_SetTimeOut(20000)
SCtr_AddCode(GetHtmlVbs("http://www.purebasic.fr/german/"))
sHRefs.s = SCtr_EvalStr("myHtml")
If sHRefs
  MessageRequester("HTML", sHRefs)
EndIf
Funktioniert bei mir (was ja nichts heissen soll, denn
URLDownloadToFile_() funktioniert ja auch bei mir ;-) )

Du musst halt nur die UserLib von ts-soft bei Dir installieren.

> Wenn du willst, dann nehme ich dich mit in mein Programnm auf, also
> etwa so: "Thanks to Kiffi" oder so...

Brauchste nicht. Ist gern geschehen!

Grüße & Daumendrück ... Kiffi

Verfasst: 08.06.2006 03:21
von Nik
Bin gerade net an nem windows pc, kann aber soviel sagen, das Linux Kommandozeilentool wget kann ohne weiteres "wget www.google.de" machen, dann kriegt man das index.html file. Also zur not nimmste des wget aus cygwin mit der entsprechenden cygwin.dll und rufst es über ne pipe auf, spart dir auch den ärger mit sicherheitslücken die man net stopfen kann weil microsoft sie verbockt hat und macht dein tool platformunabhängig

Verfasst: 10.06.2006 00:10
von Kiffi
Kiffi hat geschrieben:Hier ist der Code:
und? Hat's was gebracht?

Grüße ... Kiffi

Verfasst: 07.07.2006 23:51
von Icke
Bei mir geht es auch nicht, wenn ich aber vorher im Webgadget lade geht es ... :freak:

Könnte es ein IE Cache Problem sein?

Code: Alles auswählen

Enumeration
  #Window_0
EndEnumeration

Enumeration
  #Web_0
EndEnumeration

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 216, 0, 600, 300, #PB_Window_Invisible | #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "")
    If CreateGadgetList(WindowID())
      WebGadget(#Web_0, 20, 30, 560, 240, "http://www.purebasic.fr/german")
      If URLDownloadToFile_(0,"http://www.purebasic.fr/german","c:\geladen.html",0,0) = #S_OK
        Debug "seite geladen"
      Else
        Debug "seite nicht geladen"
      EndIf
    EndIf
  EndIf
EndProcedure

Open_Window_0()