Beege Posted June 5, 2009 Share Posted June 5, 2009 (edited) Update 3-17-2010Here the latest of my FTP Explorer. Its probably going to be a while before I post anything else for this project. Even though this project has come a long way from when I started it, I don't like the direction its heading. I'm really starting to see what Valiks always taking about with global variables being bad and creating interfaces that handle different sections of the programs. Right now I have so many global vars, and anytime I want to change something it takes ten times more time updating the rest of the script then it did to write the actual change. Anyway, I got to do something because its becoming not fun anymore. And who wants to have a hobby thats not fun? Btw this is written to work with v3.3.6.0. Changes:- Added Up/Down Icons for queue list. (Thanks for idea Zedna)- Made Changes to Richedit Functions. Now more colorful.- Each listview and richedit are automatically given focus when mouse hovers them.(going to make it optional in future)- Created a main icon for script and back buttons. - Rewrote main FTPNavigation fuction. Major performance increase.- Added function that sets back button tooltip to the directory it will navigate to. FTP Explorer 3-17-10.zipUpdate 1-27-2010Alright so here is the latest update for my FTP Explorer. If you would like to compile it use the scripts in the compile folder I made. Those scripts have been Obfuscated to remove a lot of unused functions. Makes a huge difference in file size. As always, please let me know if you have any kind of problems. Written to work with v3.3.4.0. Some of the new additions that I have been working on are: - ability to abort transfers - ability to maximize - New right-click menu for selecting columns views (Size, Modification Date, Creation Date..) - automatic Queue List restore. (also restores your navigation history) - estimated finish time for file transfersFTP Explorer 1-27-2010.zipUpdate 1-10-2010Well I have done a lot of work to this since the last one. One of the biggest features is that it now uses a second process to handle the uploading and downloading (Thanks Yashied). The second process creates its own connection which allows you to continue navigating while you have tranfers going on. Some of the other things that I have been working on for it include right-click menus, RichEdit status box, status bar, history ini to keep track of previous connections and info, history combo boxes that you can type directory's in and navigate stright to. I Still have a some more ideas to implement but thought I would post what I got to see if I could get some feedback. Any opinions, ideas or problems, please don't be shy to drop me a line This is written to work with v3.3.2.0.FTP Explorer 1-10-10.zipInitial ReleaseHere is another FTP Explorer program I have been working on. Its not quite finished but close. I still have a couple things to do but wanted to show. The new beta is needed to run this. Special thanks go to Prog@ndy for his Icon functions and _FTPEx udf. Please let me know about problems you experience, or recommendations. Thanks For Looking!!FTP_Explorer.au3 Edited March 17, 2010 by Beege wakillon 1 Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
Yashied Posted June 5, 2009 Share Posted June 5, 2009 (edited) bchris01, good job, but I think it would be better to make the upload/download functions in a separate process (files) and the communication between him and the GUI. In this way you get rid of the hangs in main program. I have a similar project, I wrote to clients of the company in which I work. And in my program, I separated the GUI, and the upload process in different modules. Also, it would be good idea to use InternetSetOption() function to change the timeout when the connection to the FTP-server, etc.http://www.autoitscript.com/forum/index.php?showtopic=93916 Edited June 5, 2009 by Yashied My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More... Link to comment Share on other sites More sharing options...
Beege Posted June 6, 2009 Author Share Posted June 6, 2009 Thanks Yashied. I will look into the tips you gave me. Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
laojikelly Posted June 6, 2009 Share Posted June 6, 2009 thanks for sharing! beautiful scripts ! Link to comment Share on other sites More sharing options...
FinalVersion Posted June 7, 2009 Share Posted June 7, 2009 Pretty sexy.. [center][+] Steam GUI [+][+] Clipboard Tool [+][+] System :: Uptime [+][+] StarCraft II Mouse Trap [+][/center] Link to comment Share on other sites More sharing options...
Yashied Posted June 7, 2009 Share Posted June 7, 2009 Pretty sexy..?!? My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More... Link to comment Share on other sites More sharing options...
sc4ry Posted June 7, 2009 Share Posted June 7, 2009 can somebody link the ftp_ex.au3? Link to comment Share on other sites More sharing options...
ProgAndy Posted June 7, 2009 Share Posted June 7, 2009 (edited) It should be included in AutoIt 3.3.1.0 Beta (FTPEx.au3) Edited June 7, 2009 by ProgAndy *GERMAN* [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes Link to comment Share on other sites More sharing options...
Ashalshaikh Posted June 7, 2009 Share Posted June 7, 2009 Nice work Thanks Link to comment Share on other sites More sharing options...
omegabobm Posted September 5, 2009 Share Posted September 5, 2009 thank you,but it has some problems when changing dirs Link to comment Share on other sites More sharing options...
Beege Posted September 5, 2009 Author Share Posted September 5, 2009 thank you,but it has some problems when changing dirsWhat kind of problems? Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
davidkim Posted September 29, 2009 Share Posted September 29, 2009 FTP Explorer Bug.. Func _FTPdelete() Local $selectedftp, $i, $curftpdir, $del $id = MsgBox(36, 'Confirm File Delete', 'Are you sure you want to delete selected files?') If $id = 7 Then Return $selectedftp = _GUICtrlListView_GetSelectedIndices($hFTP_List, True) $curftpdir = _FTP_DirGetCurrent($conn) For $i = 1 To $selectedftp[0] $text = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 0) $type = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 1) If $type = 'DIR' Then _FTPRemovedir($curftpdir & '/' & $text) _FTP_DirSetCurrent($conn, $curftpdir) $del = _FTP_DirDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' Directory Deleted' & @CRLF) EndIf Else $del = _FTP_FileDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' File Deleted' & @CRLF) EndIf EndIf Next _GUICtrlListView_DeleteItemsSelected($hFTP_List) _FtpRefresh() EndFunc ;==>_FTPdelete Func _FTPRemovedir($FTPdir) Local $changeDir, $list _FTP_DirSetCurrent($conn, $FTPdir) $list = _FTP_ListToArrayEx($conn, 0) If IsArray($list) Then For $i = 1 To $list[0][0] If $list[$i][2] = 16 Then _FTPRemovedir($FTPdir & '/' & $list[$i][0]) _FTP_DirSetCurrent($conn, $FTPdir) _FTP_DirDelete($conn, $list[$i][0]) _check_status() _GUICtrlEdit_AppendText($hStatus_List, $FTPdir & '/' & $list[$i][0] & ' Directory Deleted' & @CRLF) Else _FTP_FileDelete($conn, $list[$i][0]) _check_status() _GUICtrlEdit_AppendText($hStatus_List, $FTPdir & '/' & $list[$i][0] & ' File Deleted' & @CRLF) EndIf Next EndIf EndFunc ;==>_FTPRemovedir test 1 Ftp server make dir ( aa ) /aa make dir /aa/aa _ftp_delete (/aa/aa) test ok _ftp_delete (/aa) not delete test fail test 2 _FTP_ProgressDownload2 -> test fail file value /aa/test.txt 10kb _FTP_ProgressDownload2 -> /aa/test.txt 0kb I interest am many quite in AutoitScript.From that is [http://cafe.naver.com/autoitscript[/color]] Korea of cafe(blog) to be operating, [size="2"][color="#ff00ff"]English cannot well[/size].Many help it requests.To read, it stands it thanks. Link to comment Share on other sites More sharing options...
Beege Posted October 7, 2009 Author Share Posted October 7, 2009 (edited) @davidkim_ftp_delete (/aa/aa) test ok _ftp_delete (/aa) not delete test failAhh I'm not sure thats a bug. That function is written to delete the items that are selected in the GUI, not what you put in parentheses. So I dont know how that first test turned out ok. If your trying to pull fuctions from my script, be sure to understand how they work because alot of them are NOT written to be some kind of a UDF. They are written to work with the rest of the script. Edited October 7, 2009 by Beege Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
SimonWebstation Posted October 7, 2009 Share Posted October 7, 2009 Very nice Script mfg. SimonMany of my answers are translated of google, because I'am from Germany Link to comment Share on other sites More sharing options...
Beege Posted October 8, 2009 Author Share Posted October 8, 2009 Very nice ScriptThankyou! Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
davidkim Posted October 16, 2009 Share Posted October 16, 2009 Ftp root\subFolder not delete Fix.... UDF -> Func _FTPdelete() Local $selectedftp, $i, $curftpdir, $del $id = MsgBox(36, 'Confirm File Delete', 'Are you sure you want to delete selected files?') If $id = 7 Then Return $selectedftp = _GUICtrlListView_GetSelectedIndices($hFTP_List, True) $curftpdir = _FTP_DirGetCurrent($conn) For $i = 1 To $selectedftp[0] $text = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 0) $type = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 1) If $type = 'DIR' Then _FTPRemovedir($curftpdir & '/' & $text) _FTP_DirSetCurrent($conn, $curftpdir) $del = _FTP_DirDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' Directory Deleted' & @CRLF) EndIf Else $del = _FTP_FileDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' File Deleted' & @CRLF) EndIf EndIf Next _GUICtrlListView_DeleteItemsSelected($hFTP_List) _FtpRefresh() EndFunc ;==>_FTPdelete Line Edit ---> If $type = 'DIR' Then _FTPRemovedir($curftpdir & '/' & $text) _FTP_DirSetCurrent($conn, $curftpdir) $del = _FTP_DirDelete($conn, $text) To.. If $type = 'DIR' Then $del_dir = $curftpdir & '/' & $text If StringTrimLeft($del_dir, 2) = $text Then _FTPRemovedir('/' & $text) Else _FTPRemovedir($curftpdir & '/' & $text) EndIf _FTP_DirSetCurrent($conn, $curftpdir) $del = _FTP_DirDelete($conn, $text) ------- Delete root\subFolder All Script.....> Func _FTPdelete() Local $selectedftp, $i, $curftpdir, $del $id = MsgBox(36, 'Confirm File Delete', 'Are you sure you want to delete selected files?') If $id = 7 Then Return $selectedftp = _GUICtrlListView_GetSelectedIndices($hFTP_List, True) $curftpdir = _FTP_DirGetCurrent($conn) For $i = 1 To $selectedftp[0] $text = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 0) $type = _GUICtrlListView_GetItemText($hFTP_List, $selectedftp[$i], 1) If $type = 'DIR' Then $del_dir = $curftpdir & '/' & $text If StringTrimLeft($del_dir, 2) = $text Then _FTPRemovedir('/' & $text) Else _FTPRemovedir($curftpdir & '/' & $text) EndIf _FTP_DirSetCurrent($conn, $curftpdir) $del = _FTP_DirDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' Directory Deleted' & @CRLF) EndIf Else $del = _FTP_FileDelete($conn, $text) If $del = 1 Then _check_status() _GUICtrlEdit_AppendText($hStatus_List, $curftpdir & '/' & $text & ' File Deleted' & @CRLF) EndIf EndIf Next _GUICtrlListView_DeleteItemsSelected($hFTP_List) _FtpRefresh() EndFunc ;==>_FTPdelete But... Error is _FTP_ProgressDownload Function Download File Size 0kb.... I interest am many quite in AutoitScript.From that is [http://cafe.naver.com/autoitscript[/color]] Korea of cafe(blog) to be operating, [size="2"][color="#ff00ff"]English cannot well[/size].Many help it requests.To read, it stands it thanks. Link to comment Share on other sites More sharing options...
davidkim Posted October 16, 2009 Share Posted October 16, 2009 #include <Array.au3> #include <FTPEx.au3> $serv = "192.168.1.205" $user = "user" $pass = "pass" $FTP = _FTP_Open("TEST") $FTPServer = _FTP_Connect($FTP,$serv,$user,$pass,1) _FTP_DirSetCurrent($FTPServer,'au3') ProgressOn("Download","Downloading *.au3 files",'', -1 , @DesktopHeight / 2 - 100) $file2Darray = _FTP_ListToArray2D($FTPServer) Global $filesizetot=0, $filename[1], $filesize[1], $filecount=0, $filesizeprogress=0 For $i=3 To $file2Darray[0][0] If StringInStr($file2Darray[$i][0],'.au3')<>0 Then $filesizetot+=$file2Darray[$i][1] _ArrayAdd($filename,$file2Darray[$i][0]) _ArrayAdd($filesize,$file2Darray[$i][1]) $filecount+=1 EndIf Next DirCreate('au3') For $i=1 To $filecount $x=_FTP_ProgressDownload($FTPServer,'au3\' & $filename[$i],$filename[$i],'_updateprogress') FileWriteLine(@ScriptDir & '\down.txt','au3\' & $filename[$i]) Next ProgressSet(100) _FTP_Close($FTPServer) _FTP_Close($FTP) Sleep(2000) ProgressOff() Func _updateprogress($percent) $filesizeprogress = Round(100 / $filesizetot * ($filesizeprogress + ($filesize[$i] /100 * $percent)) + (100 / $filecount * $i),0) ConsoleWrite('size ' & $filesizetot & @LF) FileWriteLine(@ScriptDir & '\down.txt','size ' & $filesizetot) ProgressSet($filesizeprogress, $filename[$i] & ' ' & $percent & '%' ) Return 1 Endfunc i'm test write file -> file list -> down.txt i'm test write size file -> file size -> down_size.txt down.txt size 297355 au3\adopter.au3 size 297355 au3\Ask_TargetDisk.au3 size 297355 au3\cpu.au3 size 297355 au3\diskpart.au3 size 297355 au3\dpdemo.au3 size 297355 au3\dpdemo.au3.url size 297355 au3\IE_T2.0_4.au3 size 297355 au3\IE_V1Compatibility_T2.0_4.au3 size 297355 au3\login.au3 size 297355 au3\resive.au3 size 297355 au3\sender.au3 size 297355 au3\SMART.au3 size 297355 au3\SMART_WMI.au3 size 297355 au3\test2.au3 size 297355 au3\win32.au3 size 297355 au3\Windows_Resizer.au3 size 297355 au3\yahoo_login.au3 down_size.txt 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 I interest am many quite in AutoitScript.From that is [http://cafe.naver.com/autoitscript[/color]] Korea of cafe(blog) to be operating, [size="2"][color="#ff00ff"]English cannot well[/size].Many help it requests.To read, it stands it thanks. Link to comment Share on other sites More sharing options...
Beege Posted October 16, 2009 Author Share Posted October 16, 2009 (edited) @davidkimThanks for looking at my script so much. You should take a look at my current ftp script if your intrested. I have made alot of changes since the origonal post. I figured out how to implement callback function so I dont even use _FTP_ProgressDownload() any more. As of right now it will only work with AutoIT v3.3.1.1 Beta. Something is going on with the new beta. _GUICtrlStatusBar_EmbedControl() keeps failing. Remember its no way near finished but should still work fine.Edit: _GUICtrlStatusBar_EmbedControl() should be fixed in v3.3.1.4 beta Edited October 16, 2009 by Beege Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
davidkim Posted October 16, 2009 Share Posted October 16, 2009 @davidkim Thanks for looking at my script so much. You should take a look at my current ftp script if your intrested. I have made alot of changes since the origonal post. I figured out how to implement callback function so I dont even use _FTP_ProgressDownload() any more. As of right now it will only work with AutoIT v3.3.1.1 Beta. Something is going on with the new beta. _GUICtrlStatusBar_EmbedControl() keeps failing. Remember its no way near finished but should still work fine. thanks Beege i'm download FTP Explorer NEW.au3 after test ....... After a while I will upload the My source Please wait ... I interest am many quite in AutoitScript.From that is [http://cafe.naver.com/autoitscript[/color]] Korea of cafe(blog) to be operating, [size="2"][color="#ff00ff"]English cannot well[/size].Many help it requests.To read, it stands it thanks. Link to comment Share on other sites More sharing options...
Beege Posted October 16, 2009 Author Share Posted October 16, 2009 @davidkim Also when posting code try to remember to put it in a codebox. This way it will have all the color syntax and will not be such a long post. Look for button with the autoit symbol in the toolbar. Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now