| |
|
|
Clemens Meier | je suis dabei, un http-Request avec qui POST-Methode trop erstellen. Eigentlich sollte es marcher, tut es naturellement pas. qui Zeilen, qui cela Problem beinhalten sommes: KompilierenMarqueSéparationhOpen& = InternetOpenA(addr(INET_CallerName$),opentype&,0,0,0)
print "hOpen "+str$(hOpen&)
hConnect& = InternetConnectA(hopen&,addr(server$),port%,addr(username$),addr(password$),INTERNET_SERVICE_HTTP&,0,0)
print "hConnect "+str$(hConnect&)pre> qui 1. la ligne funktioniert encore, es wird un Long-Wert ausgegeben. cette Wert wird dans qui InternetConnectA Funktion übernommen. qui Variablen avons folgende Werte: hopen& = 13369348 comme Beispiel, bekommen par InternetOpenA server$ = www.einedomain.de (cet Domain existiert) port% = 80 username$ = (j'ai es aussi avec 0 versucht) passwort$ = (j'ai es aussi avec 0 versucht) INTERNET_SERVICE_HTTP& = 3
Doch qui Wert qui zurückkommt ist 0. une Internetverbindung besteht. alors habe je encore qui Funktion internetGetLastResponseInfoA incorporé, so comme dans SDK empfohlen wird. Doch qui Fehlernummer ist 0 et il y a aucun Fehlermeldung.
Hat quelqu'un une concept, woran es ggf. liegen pourrait ou bien dans quel direction Je l' faute chercher sollte. |
|
|
| |
|
|
|
| j'ai Dein Posting déménagé - im Stammtisch gehts pas um solche Programmierprobleme. s'il te plaît nutze pour Codes aussi cela CODE, statt cela BOX - Symbol. |
|
|
| |
|
|
|
| Probier la fois un simple: KompilierenMarqueSéparation et ensuite KompilierenMarqueSéparationdeclare server$,user$,pwdd$,mem#,data#
server$:="SERVERz"
user$:="USERNAMEz"
pwdd$:="PASSWORTz"
ftppfad$:="/"
dim mem#,4
long mem#,0:=12345
dim data#,318
clear data#
chdl&:=InternetConnect(ihdl&,addr(server$),21,addr(user$),addr(pwdd$),1,134217728,0)// 134217728 == 8000000 == INTERNET_FLAG_PASSI à>
ensuite peux Du regarder si Du avec KompilierenMarqueSéparation un Handle bekommst.
mon Beispiel zielt zwar pas sur Port80 ab - mais qui Titel des Threads beschreibt oui aussi un d'autre Problem.
Salve. |
|
|
| |
|
|
|
Clemens Meier | Sorry, peux je pas ausprobieren, là je pas XPSE installer peux, car en supplément devrait je qui Doku im chm-File lesen peut, doch qui nécessaire den IE, qui sich chez mir weigert quelque chose anzuzeigen (-> Hierzu s'il te plaît aucun Kommentare, habe rund 200 Euro pour une MS-technicien ausgegeben, qui aucun Solution wußte et une Reinstallation de Windows empfahl et durchführte, wodurch weitere Programme dommage nahmen Gesamtschaden rund 700 Euro, dank à MS, qui savons, comment on qui Wirtschaft ankurbelt)
Gibt es qui XPSE-Documentation encore dans einem anderen Format, doc? html? PDF? ou bien pourrait on dein Beispielcode aussi im normalen XProfan courir laisser? |
|
|
| |
|
|
|
Rolf Koch | |
|
| |
|
|
|
| chez InternetOpenA devrait Du comme OpenType& lieber 1 prendre, pas 0 comment dans iF seinem Beispiel. Kannste oui la fois testen ( 1 = INTERNET_OPEN_TYPE_DIRECT ) si on den Agenten simple omettre peux sais je pas, serait je simple irgendwas ala: XProfan@Inet angeben |
|
|
| |
|
|
|
| Du könntest qui CHM dekompilieren.
XPSE wird mais pas installiert - lediglich aus qui IDE Deiner l'élection aufgerufen - avec dem Dateinamen comme paramètre. |
|
|
| |
|
|
|
Clemens Meier | super, juste so viele répondre, mais:
une opentype ändert rien. Den Agenten trop changement bringt aussi rien, peux on aussi vide laisser. j'ai inzwischen aussi un Beispiel avec InternetOpenUrlA versucht, doch aussi chez diesem venez seulement une 0 raus. je schätze, es liegt moins à dem Programme, mais irgendetwas à meinem System pourrait pas korrekt courir, quoique alle DLL comment onl.dll ou bien online.dll einwandfrei marcher. et si es avec qui wininet pas klappt, muss je une anderen Weg chercher.
Mmh sur den Tipp qui chm simple trop dekompilieren hätte je aussi de alleine venons peut. Habe la fois une Decompiler herunter geladen. avec cela wird es wohl aller. |
|
|
| |
|
|
|
Clemens Meier | alors, am System scheint es pas trop liegen, habe un paire Hardware- et Softwaretools courir laisser, qui aucun faute meldeten. qui wininet.dll ist ansprechbar et steht zur Disposition, toutefois bekomme je toujours den Handle 0. Habe es aussi avec dem FTPFindFirstFile versucht. InternetOpenA gibt seltsamerweise De toute façon qui gleiche Handle-numéro zurück. cela peux aussi pas normal son. peut-être hat einer de euch sur nuit encore une concept, ici la fois qui komplette Code: KompilierenMarqueSéparationdef InternetGetLastResponseInfoA(3) !"wininet.dll","InternetGetLastResponseInfoA"
ALLGEMEINE INTERNET API-Deklarationen:
def InternetCloseHandle(1) !"wininet.dll","InternetCloseHandle"
Benötigt als Parameter hInternetHandle
def InternetConnectA(8) !"wininet.dll","InternetConnectA"
Benötigt werden:
hInternetSession als &
lpszServerName als $
nProxyPort als %
lpszUsername als $
lpszPassword als $
dwService als &
dwFlags als &
dwContext als &
def InternetOpenA(5) !"wininet.dll","InternetOpenA"
Benötigt werden:
lpszCallerName als $
dwAccessType als &
lpszProxyName als $
lpszProxyBypass als $
dwFlags als &
def InternetReadFile(4) !"wininet.dll","InternetReadFile"
Benötigt werden:
hFile als &
sBuffer als $
lNumBytesToRead als &
Bytes als &
def &INTERNET_FLAG_RELOAD $80000000
def &INTERNET_SERVICE_HTTP 3
HTTP API-Deklarationen:
def HttpAddRequestHeadersA(4) !"wininet.dll","HttpAddRequestHeadersA"
Benötigt werden:
hHttpRequest als &
sHeaders als $
lHeadersLength als &
lModifiers als &
def HttpOpenRequestA(8) !"wininet.dll","HttpOpenRequestA"
Benötigt werden:
hInternetSession als &
lpszVerb als $
lpszObjectName als $
lpszVersion als $
lpszReferer als $
lpszAcceptTypes als &
dwFlags als &
dwContext als &
def HttpSendRequestA(5) !"wininet.dll","HttpSendRequestA"
Benötigt werden:
hHttpRequest als &
sHeaders als $
lHeadersLength als &
sOptional als $
lOptionalLength als &
declare HTTP_ADDREQ_FLAG_ADD&
declare HTTP_ADDREQ_FLAG_REPLACE&
declare INET_CallerName$
declare INET_ContentType$
declare IOTPreconfig%
declare IOTDirect%
declare IOTProxy%
declare INTERNET_FLAG_RELOAD&
declare INTERNET_SERVICE_HTTP&
HTTP_ADDREQ_FLAG_ADD& = $20000000
HTTP_ADDREQ_FLAG_REPLACE& = $80000000
INET_CallerName$ = "Testzugriff"
INET_ContentType$ = "Content-Type: application/x-www-form-urlencoded
"
IOTPreconfig% = 0
IOTDirect% = 1
IOTProxy% = 3
INTERNET_FLAG_RELOAD& = $80000000
INTERNET_SERVICE_HTTP& = 3
declare string$,url$,data$
Proc HttpPost
Aufruf
Parameters url$,data$,opentype&,port%,username$,password$
Declare server$,path$,hOpen&,hConnect&,hRequest&,Buffer#,Bytes&,i&,ende%,httppost$
declare errorbuffer#,error&
DIM Buffer#,2048
DIM errorbuffer#,2048
url$ = trim$(url$)
if (lower$(left$(url$,7)) = "https://")
url$ = right$(url$,len(url$)-7)
endif
i& = InStr("/",url$)
if (i& > 0)
server$ = left$(url$,i&-1)
path$ = right$(url$,len(url$)-i&+1)
else
server$ = url$
path$ = "/"
endif
print "Server: "+server$
print "Pfad: "+path$
hOpen& = InternetOpenA(addr(INET_CallerName$),opentype&,0,0,0)
print "hOpen "+str$(hOpen&)
hConnect& = InternetConnectA(hopen&,addr(server$),port%,addr(username$),addr(password$),INTERNET_SERVICE_HTTP&,0,0)
print "hConnect "+str$(hConnect&)
hRequest& = HttpOpenRequestA(hConnect&,"POST",addr(path$),"HTTP/1.0",0,0,INTERNET_FLAG_RELOAD&,0)
print "hRequest "+str$(hRequest&)
if (hRequest& = 0)
InternetGetLastResponseInfoA(addr(error&),addr(errorbuffer#),sizeof(errorbuffer#))
print str$(error&)
print "Info: "+string$(errorbuffer#,0)
waitinput
dispose buffer#
dispose errorbuffer#
end
endif
Header
HttpAddRequestHeadersA(hRequest&,addr(INET_ContentType$),len(INET_ContentType$),HTTP_ADDREQ_FLAG_REPLACE& | HTTP_ADDREQ_FLAG_ADD&)
HttpSendRequestA(hRequest&,0,0,addr(data$),len(data$))
ende% = 1
repeat
print "a"
InternetReadFile(hRequest&,addr(buffer#),sizeof(buffer#),addr(Bytes&))
if (bytes& = 0)
ende% = 0
else
httppost$ = char$(buffer#,0,bytes&)
endif
until ende% = 0
InternetCloseHandle(hRequest&)
InternetCloseHandle(hConnect&)
InternetCloseHandle(hOpen&)
dispose buffer#
dispose errorbuffer#
return httppost$
endproc
CLS
url$ = "https://www.colored-web.com/httppost/index.php"
data$ = "X=15&Y=29"
string$ = HttpPOST(url$,data$,1,80,"","")
print tring$
waitinput
end
|
|
|
| |
|
|
|
Rolf Koch | Hi, hab hin et her getestet. qui Bruchstücke Code de iF sommes mir bekannt, là wir autrefois zusammen par-dessus gesprochen hatten.
iFs Code était im Prinzip identique mais il lief im opposition trop Deinem (alors baute une FTP liaison sur et listete données sur).
peux es son, dass irgendwie qui Server ca espace pas so mag? |
|
|
| |
|
|
|
Clemens Meier | Nee, am Server scheint es pas trop liegen, habe es plan avec deux weiteren Servern à verschiedenen Standorten probiert, doch aussi chez denen venez toujours exakt cela gleiche Ergebnis raus.
Hat peut-être irgendjemand un funktionierende Prog avec InternetOpenA alors avec Api-Funktionen aus qui wininet.dll, qui je ensuite chez mir la fois ausprobieren peux? |
|
|
| |
|
|
|
| Hab je dessus posté? |
|
|
| |
|
|