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:

Von QB aus lange Website-Adresse im Browser öffnen lassen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Brandy



Anmeldungsdatum: 07.11.2018
Beiträge: 2

BeitragVerfasst am: 07.11.2018, 08:31    Titel: Von QB aus lange Website-Adresse im Browser öffnen lassen Antworten mit Zitat

Liebe Mitglieder,

ich möchte gern aus einem Basic Programm (Microsoft PDS 7.1) den Inhalt aus einem String in den Internetexplorer oder Firefox übergeben.

Der Shell Befehl funktioniert insoweit, das ich den IE oder Firefox aus dem Basic Programm starten kann. Auch kann ich ne Internetadresse im Shell Befehl übergeben. Nur sobald der String etwas länger wird (oder komplzierter) bekomme ich einen DOS Fehler 5 und mein Basic Programm hängt sich auf.

Den String habe ich paralell auch in eine Datei gespeichert, sodass ich theoretisch auch den IE oder Firefox aufmachen könnte und ihm beim aufmachen nur sagen müsste, dass er die Datei als Webadresse laden soll. Nur wie geht dies?

Mit dem FILE:/// Befehl nicht, da er mir dann nur den Inhalt der Datei anzeigt. Welchen Befehl brauche ich dazu (Run Datei... oder so ähnlich "???? dass der Firefox/IE den Inhalt einer Datei in die Webadresse einliest).

Hat jemand ne Idee, wie ich dies lösen kann?

Noch was:
Kann ich DOS Speicherinhalte (aus einem String unter QuickBasic) in den Windows Speicher überführen?, sodass ich in Windows mit SHIFT EINFÜGEN oder STRG+V die Inhalte des Speichers habe? Geht dies? Wenn ja wie?

Dann noch was: Wie kann ich aus einem virtuellen Windows XP Professional, der unter Windows 7 läuft, Speicherinhalte von Windows XP auf Windows 7 übernehmen?

Herzlichen Dank für Eure Auskünfte im voraus.

Editiert durch Moderator: Thema "Wer kann mir helfen?" umbenannt, damit es andere Programmierer mit einer ähnlichen Frage leichter finden können. (Sebastian)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
grindstone



Anmeldungsdatum: 03.10.2010
Beiträge: 1208
Wohnort: Ruhrpott

BeitragVerfasst am: 07.11.2018, 09:28    Titel: Antworten mit Zitat

Hallo Brandy und willkommen im Forum. lächeln

Eine Möglichkeit wäre der Umweg über eine Batch - Datei: Von BASIC aus eine Batch - Datei mit den erforderlichen Befehlen erstellen und diese dann mit dem Shell - Befehl starten (siehe dazu auch hier). Ansonsten wär es hilfreich zu erfahren, was genau du mit "länger" oder "komplizierter" meinst.

Zitat:
Kann ich DOS Speicherinhalte (aus einem String unter QuickBasic) in den Windows Speicher überführen?, sodass ich in Windows mit SHIFT EINFÜGEN oder STRG+V die Inhalte des Speichers habe?

Das heißt, der Text soll in die Zwischenablage geschrieben werden. Ich weiß nicht, ob man mit Microsoft PDS 7.1 auf die WinAPI zugreifen kann, mit FreeBASIC geht das auf jeden Fall.

Gruß
grindstone
_________________
For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Brandy



Anmeldungsdatum: 07.11.2018
Beiträge: 2

BeitragVerfasst am: 07.11.2018, 09:57    Titel: Antworten mit Zitat

Hallo Grindstone,

vielen Dank für Deinen beitrag. habe ihn sogelecih ausprobiert. gehht leider nicht, da mein Basic Programm, aus dem ich das Ganze aufrufe (EXE kompiliert) eine Fehlermeldung:"Program zu groß für den Hauptspeicher" auswirft.

Mein Batch ist so aufgebaut:
Code:
https://www.webapp.example/sgl1.php?LoginKey=XXXX-YYYY-ZZZZ-AB12-34CD&KdNr=1522&Anrede=Herr&Vorname=VTest&Nachname=NTest&Strasse=Beispielweg&HausNr=15&PLZ=70172&O
rt=Mustestadt&Telefon=0611-0000989-000000071&Telefax=0611-00000000320&Mobil=0173-0000000855&eMail=ub@mailadresse.de&Kontoinhaber=VTestNTestr&IBAN=DE32432342424242424422442&GebDat=01.01.1990&Benutzer=VTestNTest&ipRedirect=true


In der Batchdatei steht dann:
Code:
C:\PROGRA~1\MOZILL~1\FIREFOX.EXE -URL "und der o.a. Batch"


Suche halt mnach einer Möglichkeit diesen String in die Windows Umgebung überzuleiten.

Danke aber vielmals für den Beitrag

Editiert durch Moderator: URL anonymisiert, um Offenlegung eines evtl. nicht-öffentlichen(?) APIs zu vermeiden. (Sebastian)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
grindstone



Anmeldungsdatum: 03.10.2010
Beiträge: 1208
Wohnort: Ruhrpott

BeitragVerfasst am: 07.11.2018, 20:28    Titel: Antworten mit Zitat

Verstehe ich nicht, ist doch nur ein winzig kleines Progrämmchen. verwundert

QB habe ich z.Z. leider nicht installiert, daher als Beispiel eine freeBASIC - Version:
Code:
Open "ffbatch.bat" For Output As #1
Print #1, "C:\Programme\Internet\Firefox\firefox.exe"
Print #1, "start C:\Programme\Internet\Firefox\firefox.exe -url ""http://www.google.de"""
Close
Shell ExePath + "\ffbatch.bat"
Kill ExePath + "\ffbatch.bat"


Falls keine zweite Instanz von Firefox gestartet werden soll, einfach das erste "Print..." auskommentieren. Ein laufendes Firefox startet dann die angegebene Site (zumindest bei mir, ist vermutlich eine Einstellungssache) in einem neuen Tab.

Zitat:
Suche halt mnach einer Möglichkeit diesen String in die Windows Umgebung überzuleiten.
Dazu müsste -wie gesagt- PDS 7.1 Zugriff auf die WinAPI haben. In freeBASIC sähe das so aus:
Code:
#Include Once "windows.bi"

Sub WriteClipboard(Text As String)
  Dim As Any Ptr lpMem, hGlobalClip
 
  hGlobalClip = GlobalAlloc(GMEM_MOVEABLE Or GMEM_SHARE, Len(Text) + 1)
  OpenClipboard(NULL)
  EmptyClipboard()
  lpMem = GlobalLock(hGlobalClip)
  lstrcpy(lpMem, StrPtr(Text))
  GlobalUnlock(lpMem)
  SetClipboardData(CF_TEXT, hGlobalClip)
  CloseClipboard()
End Sub
 
WriteClipboard("http://www.google.de")


"http://www.google.de" (ohne Anführungszeichen) steht danach in der Zwischenablage und kann mit STRG + V eingefügt werden.

Und falls dir jetzt der Verdacht kommen sollte, daß ich hier heimlich und nebenbei Werbung für freeBASIC mache: Stimmt! grinsen

Gruß
grindstone
_________________
For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
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