Hi zusammen,
ich habe folgendes Problem. Ich möchte eine Datei uploaden, diese Datei lese ich Binär ein und schreibe diese in eine Variable.
Wenn ich diese Variable dann in eine Textdatei schreiben lasse ist es der Binärcode.
Lasse ich mir mit der Variable eine Msgbox ausgeben dann ist es aufeinmal HEXcode.
Aber der Server an den ich das Bild senden möchte versteht nur Binär.
Wenn ich dann den $oHTTP.Send ($sPD) mache wird auch immer der HEXcode versendet.
Wie kann das passieren? Muss ich auf irgendwas achten?
Spoiler anzeigen
AutoIt
Func Sendpicture()
$sFilePath = "C:/Users/Admin/Pictures/352_640x960_iphonehdwallpapers_net.jpg"
Local $sFile = FileOpen($sFilePath, 16)
If $sFile = -1 Then
MsgBox($MB_SYSTEMMODAL, "", "An error occurred when reading the file.")
EndIf
Local $sFileRead = FileRead($sFile)
MsgBox(0,"shda", $sFileRead)
FileClose($sFile)
;debug info
If FileExists("output.txt") Then FileDelete("output.txt")
$file = FileOpen("output.txt", 1)
FileWrite($file, $sFileRead)
FileClose($file)
$sBoundary = "------WebKitFormBoundary"&Chr(Random(Asc("A"), Asc("Z"), 3))&Chr(Random(Asc("a"), Asc("z"), 3))&Chr(Random(Asc("A"), Asc("Z"), 3))&Chr(Random(Asc("a"), Asc("z"), 3))&Random(1, 9, 1)&Random(1, 9, 1)&Random(1, 9, 1)
Local $sPD
$sPD = $sBoundary & @CRLF & _
'Content-Disposition: form-data; name="photo"; filename="Test.jpg"' & @CRLF & _
'Content-Type: image/jpeg' & @CRLF & @CRLF & _
$sFileRead
$oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
$oHTTP.Open("POST", "http://requestb.in/19g7yg56456", False)
$oHTTP.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36")
$oHTTP.SetRequestHeader("Content-Type", 'multipart/form-data; boundary="' & $sBoundary & '"')
$oHTTP.SetRequestHeader("Accept-Encoding", 'gzip, deflate')
$oHTTP.setRequestHeader("Content-Length", StringLen($sPD))
$oHTTP.Send ($sPD)
$oHeaderResponses = $oHTTP.GetAllResponseHeaders()
$oReceived = $oHTTP.ResponseText
$oStatusCode = $oHTTP.Status
ConsoleWrite($oStatusCode & @CRLF)
ConsoleWrite($oReceived)
ConsoleWrite($oHeaderResponses)
EndFunc
Alles anzeigen