Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

VB5 - Webbrowser mit Speicherung von Logindaten
Gehe zu Seite 1, 2, 3  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
c.m.obrecht



Anmeldungsdatum: 09.03.2006
Beiträge: 377
Wohnort: Hofstetten SO, CH

BeitragVerfasst am: 14.02.2007, 12:58    Titel: VB5 - Webbrowser mit Speicherung von Logindaten Antworten mit Zitat

Hallo,

ich sollte einen kleinen Browser erstellen, welcher die Funktion zum Speichern von Passwörtern, Logindaten... hat (wie bei Firefox...). Habe bei google einige Beispiele gefunden, doch leider haben die nicht funktioniert (möglicherweise habe ich auch etwas falsch gemacht). Weiss zufällig jemand wie das geht?
Ansonsten ist es kein Problem, aussser dass das Browser-Steuerelement sich beim Maximieren des Fensters nicht mit vergrössert, habe dazu keine EIgenschaft gefunden.

Vielen Dank!
_________________
...längre blomstre gamle nord...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 14.02.2007, 16:05    Titel: Antworten mit Zitat

zu 2) du must die sub form_resize() verwenden. diese wird aufgerufen, wenn das fenster vergrößert/kleinert wird. dann kannst du die browser-controls auch mit der größe anpassen.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
c.m.obrecht



Anmeldungsdatum: 09.03.2006
Beiträge: 377
Wohnort: Hofstetten SO, CH

BeitragVerfasst am: 14.02.2007, 19:04    Titel: Antworten mit Zitat

Danke, habe irgendwie ein kleines Problem; hatte ein Beispiel genommen und die Prozedur erstellt. Nun wird aber das Fenster immer im Vollbild ausgeführt und das Browserelement geht immer über den Fensterrand hinaus. Was muss ich in die Resize - Sub schreiben damit die Elemente und Fenster so bleiben wie ich sie im Entwurf erstellt habe und die Grösse dann nur zur Laufzeit manuell verändern lässt?

Es steht folgendes; habe mit den Zahlen experimentiert ohne Erfolg:


Code:

Private Sub Form_Resize()
WebBrowser1.Width = Me.ScaleWidth - 100
    WebBrowser1.Height = Me.ScaleHeight - 100

End Sub
Private Sub Form_Load()
Form_Resize
    Me.Left = GetSetting(App.Title, "Settings", "MainLeft", 500)
    Me.Top = GetSetting(App.Title, "Settings", "MainTop", 500)
    Me.Width = GetSetting(App.Title, "Settings", "MainWidth", 3250)
    Me.Height = GetSetting(App.Title, "Settings", "MainHeight", 3250)
End Sub

_________________
...längre blomstre gamle nord...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
c.m.obrecht



Anmeldungsdatum: 09.03.2006
Beiträge: 377
Wohnort: Hofstetten SO, CH

BeitragVerfasst am: 19.02.2007, 17:01    Titel: Antworten mit Zitat

Die Probleme haben sich soweit erledigt. Nun weiteres - lässt sich irgendwie verhindern dass der Browser in den Verlauf schreibt? Und lassen sich die IE-Favoriten importieren?

Vielen Dank
_________________
...längre blomstre gamle nord...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 19.02.2007, 17:37    Titel: Antworten mit Zitat

@c.m. .. bei Grössenänderungen, solltest du immer
Code:

Public Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Public Const SM_CYCAPTION = 4

Private Sub Form_Resize()
On Error Resume Next
If Me.WindowState <> 1 Then
    Dim XW As Long
    Dim XH As Long
    Dim SYME As Long
    SYME = GetSystemMetrics(SM_CYCAPTION) * Screen.TwipsPerPixelY
    XW = Me.Width - 120
    XH = Me.Height - 120 - SYME
    WebBrowser1.Width = XW
    WebBrowser1.Height = XH
End If
End Sub



nutzen.

Grund: Auf unterschiedlichen Systemen können utnerschiedliche Styles verwendet werden, die unterschiedliche Höhen der Titelleiste konfiguriert haben. Darauf sollte dein programm reagieren können. Um die Aktuelle Höhe dieser aus zu lesen, kann man eine API nutzen. (siehe oben)

Desweiteren solltest du darauf achten, das keien Fehler entstehen. Das kann z.B. dann passieren, wenn du Resize Events nutzt, ohne zu prüfen, ob die Form in der Taskleiste liegt, oder nicht .. wenn du sie Minimirst, dann entsteht ein Resize event, das Illegale Werte an deine Controls sendet. Das kannst du durch prüffen der "WindowState" kontrolieren, und den entsteheden fehler umgehen.

die "- 120" entspricht dem Standard der Borderwidth der Form.
GetSystemMetrics(SM_CYCAPTION) liefert die Höhe der Titelleiste in Pixel, und muss folglich noch mit TwipsPerPixelY Multipliziert werden, um korrekte Werte zu erhalten.

[Nachtrag]
Das der IE in den Verlauf schreibt, ist nicht zu verhindern, zumindest nicht ohne weiteres. Abgesehen davon, Schreibt IE auch die Verlaufsdaten in die Registry, die du nur per hand ändern kannst (die entsprechenden werte) .. Zumindest unter 98 ist dies so, unter XP ist der IE-Verlauf allerdings über ein Tweak-Tool dazu zu zwingen, das die Verlaufdaten gelöscht werden. Alternativ kannst du auch den Verlauf auf 1_Tag setzen, in den IE-Einstellungen, allerdings willst du das sicher auch nicht.

Du könntest auch den FF-Browser-Control einsetzen. fals dir der IE nicht zusagt ... es sei allerdings erwähnt, das beide Browser auf dem Zielsystem vorhanden sein müssen, je nachdem, was du einsetzen möchtest. Beim FF muss der FF auf dem Ziel vorhanden sein, beim IE der IE.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
c.m.obrecht



Anmeldungsdatum: 09.03.2006
Beiträge: 377
Wohnort: Hofstetten SO, CH

BeitragVerfasst am: 19.02.2007, 21:38    Titel: Antworten mit Zitat

Oh vielen Dank!
Wegen dem Verlauf habe ich etwas bemerkt; damit nicht immer ein Java Script - Fehler angezeigt wird habe ich WebBrowser.silent= true eingefügt. Seither scheint mir taucht nichts mehr im Verlauf auf. Kann das sein? lächeln

Hat jemand eine Idee wie das mit den Favoriten gehen könnte? Es dürfen auch die IE - Favoriten sein.

Mit FF geht es weniger, da der Browser schon auf den meisten Computern, nicht nur bei mir, laufen sollte.
_________________
...längre blomstre gamle nord...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 19.02.2007, 21:43    Titel: Antworten mit Zitat

Zitat:
Mit FF geht es weniger, da der Browser schon auf den meisten Computern, nicht nur bei mir, laufen sollte.


durchgeknallt Denk ma nich so, der FF is 1. beliebt, und zweitens is der IE bald Altware, sollte sich mein Verdacht bzgl. Vista bestätigen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 19.02.2007, 21:53    Titel: Antworten mit Zitat

Verdacht? lachen
Übrigens is der FF-Anteil weltweit unter 10%, soviel ich weiß. In Deutschland liegt er glaube ich bei 30%...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 19.02.2007, 22:10    Titel: Antworten mit Zitat

Aber immerhin etwas. zwinkern

@c.m.obrecht:
Willst du eigene Favoriten in deinem Browser realisieren oder müssen es die IE-Favoriten sein?
Ansonsten ließe sich das nämlich leicht mit 'nem Button und wenig Code realisieren: Button mit "+" beschriftet, added die aktuelle Adresse aus der Adresszeile zu 'ner Listbox. Beim Erstellen und Zerstören des Formulars (in Delphi OnCreate und OnDestroy, Delphi deswegen, da ich sowas schonmal in Delphi entwickelt hab) einfach die Liste aus einer zentralen Datei laden bzw. in diese speichern.

Falls du jetzt was anderes gemeint hast, sorry. zwinkern
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
c.m.obrecht



Anmeldungsdatum: 09.03.2006
Beiträge: 377
Wohnort: Hofstetten SO, CH

BeitragVerfasst am: 19.02.2007, 22:41    Titel: Antworten mit Zitat

Naja da der IE in Windows integriert ist... die Chancen stehen sicher höher, auch wenn FF Verbreitung findet.
Ich kam ursprünglich auf die Idee, diesen Browser zu konstruieren da der FF im Geschäft plötzlich nicht mehr funktionierte bzw. wenn man sich einloggte bei der Lieferantenseite und dann ein Produkt suchen wollte man einfach wieder auf der Login-Seite landet. Darum dachte ich, ich mache einen Browser bei dem gleich die Login-Daten von beiden Filialen gespeichert sind und mit einem Knopfdruck eingeloggt wird (bei FF muss man mit 2 Passwortern ja auch beginnne zu schreiben damit die Auswahl kommt).

Wegen den Favoriten, mit dem ListBox habe ich noch kaum gearbeitet bisher. Kann man dort leicht die Daten wieder auslesen und löschen etc.? IE-Favoriten wären übrigens gar nicht schlecht, müsste man nicht alles übertragen. Könnte ev. auch beides realisieren.
_________________
...längre blomstre gamle nord...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 20.02.2007, 11:25    Titel: Antworten mit Zitat

Nun, ich weiß nicht, wie's bei VB ist, aber bei Delphi gibt's dafür direkt Funktionen. LoadFromFile und SaveToFile heißen die. lächeln
Sind direkt Funktionen des Objekts Listbox. Evtl. musst du ins Unterobjekt Items oder so, hab von VB so gut wie keine Ahnung. zwinkern
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 20.02.2007, 12:15    Titel: Antworten mit Zitat

@Mao .. nop .. solche Funktionen hat das Listview nicht .. oder die "list"

Allerdings kannst du das auch ganz simpel per hand machen. (Vorraussetzung ist, das du kein ASCII(1) in den werten hast .. oder sonst eiens, das du als trenner nutzen willst (ASCII(0) bitte nicht, da es das Dateiende markiert.

Code:

Public Sub X_GetListString(V_List as ListBox)
Dim X as long
Dim D as string
with V_List
    for x = 0 to .listcount -1
        d = d & list(x) & chr(1)
    next
end with
end sub


Public Sub X_SetListString(V_List as ListBox, byval V_Data as string)
Dim X as long
Dim Pos as long
with V_List
    for x = 1 to len(v_data)
        Pos = instr(1,v_data,chr(1))
        if pos > 0 then
            .add left(v_data,1,pos-1)
            v_data = mid(v_data,pos+1)
        else:exit for
        end if
    next
end with
end sub


Das kann man natürlich noch sehr erweitern, mit Funktionen zum speichern, und laden, oder mit Prüfungen, ob der wert schon vorhanden is, oder ob er leer is, oder oder oder ...


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 20.02.2007, 13:17    Titel: Antworten mit Zitat

Hab gesagt, dass ich nicht viel Ahnung von VB hab; und außerdem dazugeschrieben, dass dies Delphi's VCL-Funktionen sind. Zunge rausstrecken
Ich hatte nur vermutet, dass VB ähnliche Funktionen für sein Listbox-Control bereitstellt...
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 20.02.2007, 13:26    Titel: Antworten mit Zitat

Nop grinsen

das Beispiel war übrigens für *Scroll* .. für C.M. Zunge rausstrecken

Nutzt Delllphi nicht auch nur die Win-Controls? .. oder haben die eigene, in denen solche funktionen integriert sind?


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 20.02.2007, 13:30    Titel: Antworten mit Zitat

War mir schon klar, dass das Beispiel für ihn ist. peinlich zwinkern

Delphi hat eine eigene visuelle Bibliothek (die VCL, VisualControlLibrary), welche eine umfangreiche Schnittstelle von Delphi-Controls und Original-Windows-Controls bereitstellt. Für viele Funktionen die in der VCL bereits integriert sind bräuchtest du i.d.R. 'ne Menge Codezeilen, was dir so erspart wird - kannst dich da also komplett auf die Anwendung konzentrieren. Weiß jetzt nicht, wie VB das ganze händelt, aber bestimmt so ähnlich.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 20.02.2007, 13:33    Titel: Antworten mit Zitat

hmm .. also .. "Libis" im sinne von Libs, hat es nicht wirklich ... man kann die Steuerelemente direkt hinzu fügen, drauf zeichenen, udn "Objekt-Orientiert" auf Methoden / Events / Parameter zugreifen. Folglich müssen alle Funktionen, die im Control nicht vorhanden sind, vom Coder selbst erstellt werden.

Was auch vorteile in der grösse des QC's hat *g* (wennd ie Libs nicht implementiert werden müssen)

MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 20.02.2007, 18:23    Titel: Antworten mit Zitat

Sorry, mit der Größe teuschste dich. zwinkern
Eine Delphi-EXE mit aktueller VCL, compiliert mit dem Compiler aus dem BDS 3.0 (2005) benötigt ~ 360 KB. Die Runtime-DLL's von VB belegen eine Menge mehr. zwinkern
Ebenso ist es mit .Net - auch wenn DotNet halt mittlerweile fast zum Standard-Umfang von Windows gehört. traurig

Die VCL nimmt einem so gesehen praktisch die Drecksarbeit ab. grinsen
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 20.02.2007, 18:38    Titel: Antworten mit Zitat

[OT]

Also wenn du schon
Mao hat Folgendes geschrieben:

Standard-Umfang

so sehr herraushebst, muss ich doch gleich mal erwidern:
Mao hat Folgendes geschrieben:

mit der Größe teuschste dich


lachen

[/OT]
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 20.02.2007, 18:41    Titel: Antworten mit Zitat

Hehe, ich steh dazu. grinsen

Und das kursive war nur ein "Versehen"... durchgeknallt
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 20.02.2007, 19:06    Titel: Antworten mit Zitat

jo ... .NET is ne Krankheit .. wie kann man nur 20MB Laufzeitumgebung zum Installationspacket packen, einer Äxe, welche gerade ma 50K oder weniger hat ... verwundert

Da bin ich mit meiner MSVBVM60.dll noch recht zufrieden. grinsen ... schön kompakt, udn durch Native Kompilierung hat man auch ne schöne flinke EXE ... Aber, dieses .NET zeugs ... mit dem Kopf durch die Mauer wollen ne ... das is echt ekelhaft ...und alles wegen SUN und JAVA ... Kopf schütteln

@Mao .. ja, dann wird folglich das ganze VCXAbablub zeugs in die EXE mit ein kompiliert, udn nicht nur die benötigten Funktionen und Obejkte?!


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2, 3  Weiter
Seite 1 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz