Danke das erleichtert meine Fehlersuche enorm!
Beiträge von nuts
-
-
Hinter der Übergabe der Daten steht ja noch eine gewissen Interaktion des Servers (die Daten werden in die vorhanden Datenbank aufgenommen).
Somit muss man sich an den vorgegebenen Weg des Entwicklers halten. -
Hey,
ich möchte zu einem Webserver Daten übergeben. Allerdings werden die Daten nur in einem bestimmten Format angenommen und da schon beim Erstellen der Daten jede Menge schief gehen kann wollte ich mich vergewissern ob meine Vorgehnsweise für den Post Request theoretisch richtig ist.
Zunächst mal die Doku zum Webserver (Recordingservice vom dvbviewer):
Spoiler anzeigen
the basic url is:Zitathttp://[user:password@]IP[:port]/api
a POST request toZitaturl/cgi-bin/EPGimport
[autoit]
Nun zum Skript:
[/autoit]
#include "WinHTTP.au3"
Global $replace ="stringxy" ; die Daten
Global $hconncect = _WinHttpConnect($hOpen, "192.168.1.103",8000)
Global $request = _WinHttpOpenRequest($hconncect, "POST","/api/cgi-bin/EPGimport")
_WinHttpWriteData($Request, $replace)
Soweit korrekt?Gruß nuts
P.S. Hintergrund: Es funktioniert natürlich nicht
Könnte aber an vielen Dingen liegen :wacko:Post 900
-
Hm dadurch wird nur geprüft ob der Eintrag gleich "" ist.
Sollte der Eintrag nicht existieren bricht das Skript hier mit einem Fehler ab.
Wie groß ein Array ist bzw. welche Dimension es hat zeigt dir die Funktion Ubound.\edit zu langsam.

-
Das ist leicht: Stringsplit($var,"")

-
Also so irgendwie wäre es schon besser. Die IP's der Clients sind ja dem Server bekannt und können weitergereicht werden.
Zur Not muss der User eben mal die readme lesen und die Firewall in ihre Schranken weisen
Das Konzept immer über den Server zu gehen ist ja auch nicht so einfach zu managen (Bandbreitenbeschränkung pro User usw.) -
Ist wirklich super.

Zum Datentransfer: Client -> Server -> Client erscheint mir doch ziemlich uneffektiv. Wieso ist dieser Weg nötig?
-
Vielleicht könnte man sich das Abspeichern für diese Anforderung sparen und die Daten gleich vom Speicher wegschicken?
Schau dir mal die UDF genau an. -
Naja vielleicht kann man die vorgehensweise trotzdem in Pseudocode umschreiben? Sonst sind die Hinweise relativ sinnbefreit.
-
Dann Poste mal das ganze vbs Skirpt.
Sieht aus wie eine Zuweisung an eine Variable (xlThick = Rückgabewert von .Cells(10, 10)).Borders.LineStyle )
Oder es wird ein Wert (xlThick) gesetzt. -
Spoiler anzeigen
[autoit]$oExcel = ObjCreate("Excel.Application")
[/autoit] [autoit][/autoit] [autoit]
$oExcel.visible =1
$oExcel.workbooks.addWith $oExcel.activesheet
[/autoit] [autoit][/autoit] [autoit]
.cells(2,2).value = 1
.range("A1:B2").clear
EndWith$oExcel.quit
[/autoit]
Aus der Hilfe zu With ... Endwith. -
Poste doch mal den Link zur DLL-Doku oder wo hast du die Codezeilen her?
-
Das ist so wie es aussieht ein SplashonDisplay und lässt sich so ohne weiteres nicht überlagern.
-
Nicht schlecht. Im Prinzip arbeitet das ähnlich wie USkin oder? http://progandy.co.cc/downloads?task=view.download&cid=6
Dort können Windowsthemes fürs eigene Prog. gesetzt werden (ohne Werbung). -
Wir sind zu schnell fürs Forum

-
Klar:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>$Form1 = GUICreate("xxXXxx", 799, 651, 211, 123, $WS_MAXIMIZEBOX )
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$adresse = GUICtrlCreateInput("Dein-Text", 88, 2, 561, 21)
Global $startseite = "www.google.de"
Global $oIE = _IECreateEmbedded ()
$GUIActiveX = GUICtrlCreateObj($oIE, 2, 24, 793, 609)
GUICtrlSetResizing (-1, $GUI_DOCKAUTO)
_IENavigate ($oIE,$startseite)
$Label1 = GUICtrlCreateLabel("Adresse.:", 0, 0, 66, 23)
GUICtrlSetFont(-1, 10, 800, 0, "Comic Sans MS")
GUICtrlSetColor(-1, 0x3399FF)
$Button1 = GUICtrlCreateButton("Suchen", 656, 0, 75, 25)
GUISetState(@SW_SHOW)While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $button1
_IENavigate ($oIE, GUICtrlRead($adresse))
EndSwitch
WEnd -
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>$Form1 = GUICreate("xxXXxx", 799, 651, 211, 123)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$adresse = GUICtrlCreateInput("Dein-Text", 88, 2, 561, 21)
Global $startseite = "www.google.de"
Global $oIE = _IECreateEmbedded ()
$GUIActiveX = GUICtrlCreateObj($oIE, 2, 24, 793, 609)
_IENavigate ($oIE,$startseite)
$Label1 = GUICtrlCreateLabel("Adresse.:", 0, 0, 66, 23)
GUICtrlSetFont(-1, 10, 800, 0, "Comic Sans MS")
GUICtrlSetColor(-1, 0x3399FF)
$Button1 = GUICtrlCreateButton("Suchen", 656, 0, 75, 25)
GUISetState(@SW_SHOW)While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $button1
_IENavigate ($oIE, GUICtrlRead($adresse))
EndSwitch
WEnd
War ja fast richtig
-
Poste doch mal dein ganzes Skript!
[autoit]
[/autoit]
$adresse = GUICtrlCreateInput("Dein-Text", 88, 2, 561, 21)
Global $oIE = _IECreateEmbedded ()
$GUIActiveX = GUICtrlCreateObj($oIE, 2, 24, 793, 609)
_IENavigate ($oIE, GUICtrlRead($adresse)) -
Am besten du versuchst an den Text auf anderem Weg ranzukommen.
z.B. das Control auslesen (geht auch bei fremden Controls je nachdem s. Autoit-Infotool).
Die Methode mit Mousclick ist sehr fehleranfällig. -
Guictrlread ist dein Freund.
