|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Brandy
Anmeldungsdatum: 07.11.2018 Beiträge: 2
|
Verfasst am: 07.11.2018, 09:31 Titel: Von QB aus lange Website-Adresse im Browser öffnen lassen |
|
|
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 |
|
|
grindstone
Anmeldungsdatum: 03.10.2010 Beiträge: 1220 Wohnort: Ruhrpott
|
Verfasst am: 07.11.2018, 10:28 Titel: |
|
|
Hallo Brandy und willkommen im Forum.
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 |
|
|
Brandy
Anmeldungsdatum: 07.11.2018 Beiträge: 2
|
Verfasst am: 07.11.2018, 10:57 Titel: |
|
|
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 |
|
|
grindstone
Anmeldungsdatum: 03.10.2010 Beiträge: 1220 Wohnort: Ruhrpott
|
Verfasst am: 07.11.2018, 21:28 Titel: |
|
|
Verstehe ich nicht, ist doch nur ein winzig kleines Progrämmchen.
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!
Gruß
grindstone _________________ For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen! |
|
Nach oben |
|
|
|
|
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.
|
|