BulletProof FTP is, zoals de naam al doet vermoeden, een ftp-client waarmee gebruikers met een Windowssysteem bestanden kunnen uitwisselen met een ftp-server. Naast de gewoonlijke functies ondersteunt het programma onder andere om automatisch opnieuw verbinding te maken en door te gaan met het up- of downloaden wanneer de verbinding wordt verbroken. Ook is het mogelijk om met de functie remote mirroring een complete kopie te maken van een ftp-site en deze vervolgens up to date te houden zonder elke keer de complete data binnen te moeten halen. De ontwikkelaars hebben versie 2.59 build 50 uitgebracht met de volgende lijst van aanpassingen sinds de vorige vermelding in de meuktracker:
Version 2.59 Build 50:
Version 2.59 Build 49:
- Fix: In Options, solved a problem in saving "Monitor Clipboard" and the expert options "Delete After Download", "Fast Dir Change" and "Leech Mode"
- Update: Version number did not correctly increment in v2.59, as it still showed v2.58 in the v2.59 build. I will now used FULL version numbers, ie: 22.214.171.124
- Update: In the About-Box, made "Single Click" close the dialog in addition to dbl-click.
- Change: Reworked the "Check for Updates" to direct a web-browser to a new location on the website for "Version Updates" which helps to step customers through updating their copy of the software. The software will no longer download the software via the Queued-Actions, this is good as it keeps from confusing less "technical" customers. Passing ver/reguser/id to update page in order to deliver a custom version-update page.
- Fix: Right-clicking on an empty queued-actions will no longer display "Remove Queued Action" (as there are no actions to remove if it's empty)
- Fix: Found a HUGE problem in the way Actions were being called, BPCActions.ExecuteAction(actionSOMENAME) doesn't work. Need to call it with actionSOMENAME.Execute(). 32 OCCURRENCES IN SOURCE-FILE:BPCMAIN
- Fix: Removed the "Language" menu options until the next build when I can fix the localization functionality.
Version 2.59 Build 48:
- Internal Release: No Publically Released Build for this version
Version 2.58 Build 47:
- Urgent Fix: FS#65 - command not understood errors due to extra space. -- Due to a restructuring of and centralization of the issuing of FTP Protocol Commands into a single function. A bug was introduced in which a trailing " "==0x20==SPACE was added to the command sent to the FTP Server. Although most FTP Servers will trim extra whitespace from commands. Two customers have reported problems with FTP Servers and an immediate fix was issued.
Version 2.57 Build 45:
- Change: Set the init value of "ShowWelcomeMessage" to FALSE. Because people don't like seeing a "pop-up" window containing the FTP Server's MOTD.
- Change: Set the init value of "ShowSitesOnStartup" to FALSE. Because the Bookmark Mgr is pretty confusing and doesn't look good (yet).
- Fix: Found a HUGE problem in the way Actions were being called, BPCActions.ExecuteAction(actionSOMENAME) doesn't work. Need to call it with actionSOMENAME.Execute(). 45 Occurrences.
- Fix: Found another set of occurences in the registry where values where being READ during LOAD with a " '==0x20==SPACE character in-fron of the variable names. This was causing a failure to retrieve the value. The Sound and LogFile settings were affected in "Options" (ConnectSound, DownloadSound, DisconnectSound, LogFileName)
- Update: Set the init values for the LogWindow/Splitter and QueueWindow/Splitter to better position on form.
- Update: Removed Crash-Report from Executable as the code was designed to allow Unhandled Exceptions. This caused a problem as Crash-Reports were being initiated when it wasn't an actual crash. :(
- Fix: In changing the MainToolbar of the program, there were several old components that we left in the resources for the program. This was causing code which referred to these old components to be compiled, but since so much of the old code is tied to UI pieces for their state and operation; this caused the Connect|Disconnect buttons to not work as designed. Found bade resources and converted code to use Actions (MainToolbar_Connect | Disconnect | Abort | ClearAll | BookmarksMgr | BookmarksAdd | EnterURL | Options | FileView)
- Fix: CTRL-G wasn't connecting to the FTP Server (if the connection wasn't made yet). If you were connected, everything would work just fine and the queue would be executed; but only if you were first connected to the FTP Server.
- Fix: Buf #41 - ESockError: Error 10053 (Software caused connection abort) sending.
- Fix: Bug #43 - ESockError: Error 10038 (Socket operation on non-socket) getting # of bytes in Receive Buffer.
- Fix: Bug #44 - EZeroDivide: Floating point division by zero.
- Fix: Bug #45 - ESockError: Error 10054 (Connection reset by peer) recieving.
- Fix: Bug #47 - EAccessViolation: Access violation at address 00684FE5 in module 'bpftpclient.exe'. Read of addres
- Fix: Bug #55 - ESockError: Error 11001 (Host not found) finding address for host.
- Fix: Major Clean up and consolidation of internal routines (removed ToolbarPerform_* in favor of all code consolidated in BPCActions.ExecuteAction())
- Fix: Bug #33 - EZeroDivide: Floating point division by zero. Wrapped all division operands with a try..except..end
- Fix: Bug #42 - ESockError: Error 11001 (Host not found) finding address for host. This was the result of the MaskEdit component which took in the BPCSettings.Firewall_ForcedIP, but allowed SPACES to be in the IP address (example "192.168. 0. 80"). This information was then feed into BPFTP Client when operating in PORT mode and caused this exception to occur during the data-connection via PORT MODE.
- Fix: Found a type-o in the values being WRITTEN to the registry in which the variable name had a " "==0x20==SPACE character in-front of the variable named. This was causing a failure to retrieve the value (as the READ did not have the space), but a success on saving. Variables were all in \BPFTPKEY\Options and were "HTTPFirewallPassword", "FirewallPassword", "FirewallLogin", "FirewallType", "PassiveMode", "DynamicPorts", "LowPort", "HighPort"
- Code Clean-Up: Refactoring and Cleaning up of Main code (BPCMain), got about 75% of function-naming normalized and 30% of all procedures/variables pretty-printed