StableBit Scanner 2.X ===================== | Summary ======= * Updated to .NET Framework 4.8. * Various bug fixes. RELEASE ======= 2.6.7.4027 ---------- * Release final. BETA ==== .4024 * Updated material theme colors. .4020 * Fixed overlapping drawing of the disk active percent chart. 2.6.7.4018 ---------- * BETA. .4017 * Improved how performance disk charts deal with missing samples. .4015 * Tweaked the automatic updates dialog. .4014 * The available HTTPS TLS versions will now be determined by the operating system. * The minimum supported version of the .NET Framework is now 4.8. .4008 * Updated the legacy non-cloud download server host name to 'covecube.download' (global CDN). .4005 * The scan progress was not always persisted if the service was stopped while a scan was ongoing. .4004 * Fixed normalizing SMART attribute values. RELEASE ======= 2.6.6.4003 ---------- * Release final. BETA ==== .4002 * Fixed cloud application settings synchronization for unsigned integral types. RELEASE ======= 2.6.5.4000 ---------- * Release final. BETA ==== .3998 * Adjusted sparkline colors in dark themes. 2.6.5.3996 ---------- * BETA. .3995 * Added application settings synchronization throttling tiers (free vs. plus) for improved server load distribution. .3993 * [Issue #28833] Avoid disk key collisions from the cloud. * [Issue #28833] Do not use the WMI serial number in combination with the disk size as a unique identifier for a disk without some other corroborating factor. .3992 * Added additional diagnostics to help troubleshoot cloud settings synchronization failures. .3990 * [Issue #28802] Do not attempt to retrieve drive health using WMI for NVMe drives. .3989 * Fixed cloud DataInfo binder startup timing. .3988 * Fixed SMART / NVMe UI property change notifications. * Wait at least 1 minute before starting to scan external drives and cloud drives. .3985 * Improved cloud settings synchronization speed. .3983 * Misc. string formatting fixes. RELEASE ======= 2.6.4.3981 ---------- * Release final. BETA ==== * Added additional logging and error reporting around new disk creation. .3979 * [Issue #28753] Optimized the World Wide Name lookup to be in-memory. .3978 * Fixed a deadlock in the task scheduling system. .3977 * When the SMART failure status did not correspond with the SMART attribute pre-failure indicators, conflicting recommendations were presented to the user. .3975 * Removed Twitter notification support. .3974 * Display "(local)" next to local instances in the remote control drop down. .3973 * Improved LAN remote control port usage in order to minimize the possibility of port conflicts. .3972 * Fixed a crash on UI startup. RELEASE ======= 2.6.3.3969 ---------- * Release final. BETA ==== 2.6.3.3961 ---------- * BETA. .3960 * Fixed a null reference exception when selecting a damaged disk. .3959 * Fixed the scan progress percentage when scanning multiple ranges. .3957 * Changed the color of "scanning" blocks on the sector map in light mode. .3956 * Fixed a division by 0 error in the sector map UI. 2.6.3.3955 ---------- * BETA. .3954 * Fixed error reporting in the UI. .3949 * Disk status updating optimizations. .3946 * [Issue #28704] Optimized memory usage of the on-disk data structure scanning engine when dealing with a large number of bad sectors. .3944 * Native x64 support on all supported operating systems. * Native ARM64 support without emulation (on Windows 11 22H2 and newer). .3930 * Fixed a memory leak potentially affecting all service and UI binaries. .3929 * Fixed service not stopping while scanning. .3928 * [Issue #28689] Ignore CD-ROM drives when enumerating mount points. 2.6.3.3927 ---------- * Fixed the maximum temperature text color in NVMe health. * Fixed the licensing UI on high DPI screens. .3923 * Initial tablet settings: Disk access interference sensitivity = low. RELEASE ======= 2.6.2.3920 ---------- * Release final. BETA ==== .3919 * Changed how manual disk scans work: - The overall "Start Check" will immediately start scanning any blocks that are ready for a rescan (based on the current scanning rules). - Selecting "Start Check" on a particular disk will force a scan of that disk, even if the current scanning rules exclude it. - If the entire surface of that disk has been scanned recently (within the past 30 days for excluded disks), then the user is offered an option to force a full rescan immediately. 2.6.2.3914 ---------- * BETA. * The theme switching UI was sometimes not showing the High Contrast option. .3912 * Reduced the cloud synchronization frequency on the free tier. * Improved the cloud App UI service startup experience. .3908 * Live connection protocol V10: - Added support for large packets. .3907 * Added scan details to the cloud sector map. * If a disk was removed while it was queued to be scanned, scanning would never end. .3904 * Removed non-cloud SMS support. Discontinue date was May 1 2022. .3900 * Added a UI hint for updates. .3897 * BETA builds now use the BETA cloud API endpoint. * Added an update ready cloud app state for notification purposes. .3890 * Added an update available cloud app state. * Enabled cloud synchronization for update settings. 2.6.2.3869 ---------- * Updated the sector map for dark mode. * Added theme palette support to the cloud dialogs. .3857 * Added dark mode support to the volume map app (based on OS settings). * Fixed access denied errors in the volume map app. .3856 * Detect and mitigate clock shifts into the past when setting cloud states. * Added support for a high contrast theme (under Office3 or Auto). .3853 * Added support for dark mode with 6 dark themes. - A dark (Win32) title bar is only officially supported on Windows 11+. * Manual scans were sometimes being denied incorrectly. RELEASE ======= 2.6.1.3838 ---------- * Release final. BETA ==== * Fixed the age dependent sector fade color for cloud drives and SSDs. .3835 * When a scan is suspended, include the reason in the cloud state. .3833 * Do not end the scanning surface event when the scan is suspended (due to overheating, saturation, etc...). * Do not trigger the scanning surface event when only the file system needs to be scanned. RELEASE ======= 2.6.0.3830 ---------- * Release final. * Improved temperature monitoring hysteresis while scanning. .3827 * Release candidate. * Added a StableBit Cloud+ trial expiration notice. * Cloud disk details overview was not showing up sometimes. * [Issue #28642] UI placement persistence was being cleared on non-primary monitors. .3818 * Release candidate. BETA ==== .3814 * Added SSD specific scan settings under "Scanner". .3811 * Some disks were being scanned unnecessarily. .3810 * Added StableBit CloudDrive specific scan settings under "Scanner". .3807 * Fixed some inconsistencies when showing the model / serial number (cloud vs. local vs. notifications). .3804 * Added a new advanced setting Cloud_UpdateWhileInUse. - When set to true, cloud automatic updates will be installed in the background even if the service is busy (e.g. performing a scan, UI is active). * Added a warning temperature threshold setting for SSDs. - Defaults to 5C for servers, 0C for all others. .3802 * Added a maximum SSD temperature setting. - This acts as a fallback value for SSDs when we don't know the manufacturer's recommended maximum temperature (or when it's disabled). - Defaults to 65C for servers, 70C for all others. * Automatically detect the computer system type (server / desktop / laptop / tablet) and initialize settings accordingly. - Do not show "Quick Settings" on first launch. * Improved HTTP 503 recovery for the StableBit Cloud. .3799 * [Issue #28637] Added additional column sorting support for the cloud. * [Issue #28637] Disabled sorting on some columns. * Auto 30 day trial for the StableBit Cloud. 2.6.0.3797 ---------- * BETA. .3796 * Fixed thread pool tasks getting lost. .3786 * When linked to the cloud, clicking through to purchase a license from within the app will automatically add the purchased license to the cloud. .3784 * Added support for StableBit Cloud+. .3779 * Fixed an HMAC validation optimization in the live connection protocol. .3778 * If started sending real-time metrics, then keep sending for at least 1 minute. 2.6.0.3777 ---------- * BETA. .3776 * Fixed an event handle leak in the service. .3770 * Optimized how remote control deals with firewalled peers to reduce CPU usage. Firewalled peers will be rechecked every hour to determine if their firewalled status has changed. .3763 * Fixed an issue in the remote control keep-alive checker that was causing excessive resource consumption when a connection could not be established to a remote IP. * Added a desktop heap monitor. .3756 * Notification UI was not being disabled when cloud notifications were enabled. .3755 * Faster live connection recovery after connection loss. .3750 * Added support for linking to a site from the StableBit Cloud installer. .3748 * Fixed scans getting stuck in a "Scanning 0%" state. .3747 * Parallelized pre-shutdown processing. * Added an advanced setting Cloud_NoDiskIds. When enabled, disk IDs will not be queried from the cloud. * When the cloud cannot identify a disk uniquely due to insufficient information available about the disk, don't show the little cloud icon on the disk sector details view. This indicates that the disk's metadata (such as scan history, statistics, etc...) are not being made available to other apps on your account. - This can happen, for example, if a disk is not formatted or a disk's enclosure is not providing enough unique identifying information about the disk inside. .3742 * Fixed statistics not being sent without a live connection. .3741 * Cloud storable metadata was being persisted to disk too often. * To optimize idle CPU usage, run 1 second resolution performance sampling only when the cloud requires it. .3735 * Only send the real-time metrics that are actively being observed. .3733 * Application settings synchronization updated: - New V4 API (with new back-end store). - Existing settings will be migrated automatically. - Existing links to statistics will be maintained. - Certain features in the cloud will be disabled for older builds that use the previous APIs. .3723 * Fixed a crash in the file system scan when the scan completed too quickly. .3721 * Send real-time metrics when the web dashboard is open. * Never synchronize unchanged settings to the cloud. .3717 * Fixed a deadlock in the cloud token refresh API. .3714 * Improved the reliability of live reliable packets with a 64-bit sliding window and other improvements. .3713 * Cloud API tier switching improvements. * Handle server keep-alive failures from the cloud API. * A full store synchronization should not take too long when it encounters adverse network conditions. .3705 * Improved how the live connection protocol deals with long-term network interruptions and network changes. .3703 * DataInfo binder should not access disposed objects. .3702 * Power state transition support for the cloud. * Extended the live connection protocol to detect one way restrictive firewalls. * Fixed file system scan on x86. .3690 * Optimized code to reduce idle CPU usage. .3686 * Recover from invalid cloud object / change IDs. .3685 * When starting a scan and there is nothing that needs to be scanned, inform the user. * Removed all legacy message boxes from the UI. * Fixed service process not terminating on service stop. * Fixed automatic scans not stopping. .3683 * Resynchronize app states on live connection loss. * Fixed an incorrect metrics cloud object ID on send. .3678 * Numerous scan scheduler fixes and optimizations. .3675 * Live connection protocol updates: - Server connection steering for load balancing support. - Improved connection management. .3674 * Report external drives appropriately in the to scan statistic. .3672 * Added cloud support for ping, burst test, and standby immediate. .3668 * Fixed the accuracy of the total scanned bytes statistic. * Show the disk size in bytes under disk information. .3665 * Add the last scanned time to the cloud summary app state. .3664 * Do not use ReaderWriterLockSlim, it causes a deadlock on some systems. .3663 * Added additional per-disk information to the cloud summary app state. .3661 * Added support for StableBit Cloud+ API endpoint switching. * Fetch the live connection servers from DNS. .3658 * [Issue #28571] If an update file is missing when clicking install, requeue it for download. * [Issue #28571] Periodically check to make sure that a downloaded update file is still there. * Added additional live connection servers. * Updated StableBit Cloud dev / local scope domains. .3654 * Fixed restarting the notifications client in a disconnected RDP session. .3653 * Fixed a crash in the activation required notification tray. * Fixed a cloud store synchronization issue that was causing objects to be reverted to their previous state. This was rare but caused all kinds of strange intermittent behavior, such as licenses appearing to get spontaneously deactivated once in a while. * Tweaked cloud license activation timing. * Fixed auto cloud linking. .3643 * When cloud licensing is enabled and there is no license found, explicitly show that in the cloud status dialog. * Updated the cloud update signature keys to be in sync with the StableBit Cloud Installer. .3640 * Integration with the StableBit Cloud Installer (https://stablebit.cloud/Area/Apps): - Do not auto-launch. - Automatically link to the cloud. .3637 * General reliability improvements for AppStates / Notifications. .3629 * Disable local notifications when StableBit Cloud notifications are enabled. .3626 * Fixed ScanningFileSystem AppState getting stuck. * Handle unknown storable types during cloud synchronization. .3623 * Replaced the old notification triggering system with a more modern one based on DrivePool / CloudDrive. .3621 * Fixed repetitive license queries. .3620 * Report service status to the cloud. .3616 * Bind the SMART health UI to the cloud. .3602 * Bind the NVMe health UI to the cloud. .3592 * Bind the disk information UI to the cloud. .3586 * Fixed disk control options getting cut off under certain themes. * Added the ability to set disk control options from the cloud. .3576 * Added the ability to update disk settings from the cloud. .3574 * Moved simulation settings to advanced settings. * Added the ability to update settings from the cloud. 2.6.0.3568 ---------- * Metrics / statistics from older builds will no longer be accepted. .3567 * Improved AppState retry logic. .3564 * [Issue #28501] Fixed trial license expiration UI. * [Issue #28501] Simplified license expiration detection. .3562 * Fixed bad sector simulation for drives > 2 TB. .3557 * Tweaked the cloud update download retry delay. * Added StableBit Cloud tooltip icons throughout the UI to indicate what is being synchronized with the cloud and in some cases with other apps. * Updated StableBit Cloud branding. .3554 * Requeue metrics if unable to send using the API. * Temperature reporting to the cloud for statistics will now occur without delay. .3552 * Added support for transactional consistency to AppStates. .3549 * Live Connection protocol V8. .3541 * Increased Live Connection retransmission aggressiveness. .3539 * Statistics are now reported every 30 minutes. * Not all statistics were being reported at shutdown. .3535 * Statistics changes for total scanned bytes. .3534 * [Issue #28475] Fixed license activation under non-Gregorian calendars. * Do not consider 0C a valid SCT temperature. .3532 * Fixed 0K NVMe temperature reporting to the StableBit Cloud. .3531 * Extended the live connection protocol to support health and activity reporting: - Health alerts will be reported at all times. - Activity alerts will only be reported when the dashboard is open. - Summary reporting will be accelerated when the dashboard is open. - The HTTP API will be used when the live connection is not available or as a fallback. * Restart tray notifications on failure. .3529 * Added a disk setting to override the default scan interval. .3526 * Enabled real-time metrics in activity alerts. .3520 * Added a health summary to health and activity reporting. .3505 * Fixed disappearing health alerts after StoreSynchronizationService reconnect. .3499 * Added support for hiding health alerts in the cloud. .3495 * Added the StableBit Cloud health and activity reporting feature. .3477 * Fixed OS name reporting to the StableBit Cloud. * Fixed cloud licenses not activating in a timely manner. .3471 * Extended the licensing system to be better at automatic activation / deactivation when connected to the StableBit Cloud. .3457 * [Issue #28448] Added a serial number column. .3455 * [Issue #28437] Fixed changing the interval on the SMART temperature history. .3453 * Added Scanner performance metric for the StableBit Cloud. .3452 * Incorrect file system damage was being detected after reboot if a Windows update was in progress while the file system was being scanned. * Added additional disk temperature attributes for the StableBit Cloud. .3447 * Fixed NVMe warning tray notification. * SMS notification updates: - Tweaked SMS templates for readability. - Added emoji to indicate severity and type of notification. - A welcome message will now be sent automatically after adding a new number. .3442 * Fixed a deadlock in the DataInfoBinder. .3441 * Tweaked Web UI object synchronization throttling rules. .3437 * Tuned statistics reporting intervals to enable additional statistics in the StableBit Cloud. .3433 * Web UI compatibility changes for the StableBit Cloud. .3432 * Fixed the inability to start a manual scan if "do not scan surface automatically" was enabled. .3431 * Added additional commands for the StableBit Cloud. .3428 * Addressed Windows Defender false positive on Scanner.Service.Native.exe. .3427 * Added support for volume health reporting to the StableBit Cloud. * Fixed metrics flush on shutdown. .3425 * Added per-object type synchronization throttling rules. * Real-time object synchronization is now active only when the StableBit Cloud Web UI is open. - Reported in the live connection status tooltip. .3419 * [Issue #28376] Chkdsk returns error 255 when no problems are found with the filesystem. .3418 * [Issue #28372] Fixed a typo on the STableBit Cloud connect dialog. .3416 * Improved StableBit Cloud uptime status reporting: - Before allowing new connections, check the availability of the service. - If the service becomes unavailable while connected, all functionality pauses. - Do not show security specific errors unless there is an explicit deauthorization from the service. .3414 * Rewrote and modernized the disk / computer status evaluation code and made it available to the StableBit Cloud. .3406 * Added a StableBit Cloud Commands sub-service to the Live Connection service: - Commands can be dispatched securely from the StableBit Cloud to Apps in real-time. - Command completion is reported back to the StableBit Cloud also in real-time. - Commands can have additional options, results, and error states. .3401 * Fixes for StableBit Cloud license management. .3399 * [Issue #28315] Added additional logging to the DiskSelector to help better understand why disks are not being selected for automatic scanning. .3396 * Added status tooltips to each connected StableBit Cloud service: - Application settings synchronization: - Shows how many objects were synchronized to / from the cloud in this session (objects are only synchronized when they change). - Live connection: - Shows the current connected host. - Packet loss percentage on send / receive. - Packet retransmission factor on send (e.g. x1.0 means 1 additional packet had to be sent to ensure reliability of the connection per each one sent normally). - License management: - Shows whether cloud licensing is enabled. - If enabled, shows whether a license was found in the cloud or not for the current app. - Enhanced update delivery: - Shows the currently subscribed to scope and channel for update push notifications. - Shows if an update was found and which version. - Metrics and statistics: - Shows if real-time metrics are currently being sent via the live connection (if the Web UI is open in the cloud). .3395 * Lowered timeouts on metrics and disk ID API calls. * Fixed a thread pool exhaustion caused by metrics if the server is not responding. .3390 * Improved overall handling of StableBit Cloud server downtime. .3384 * [Issue #28311] Fixed IDENTIFY not respecting cloud pass-through mode. .3382 * Live connection protocol reliability fixes. * Fixed a lockup in the StableBit Cloud token service. * Added a backup automatic update mechanism. * Metrics improvements to prevent double reporting when the transmission protocol switches. .3376 * When a StableBit CloudDrive disk contains one basic volume, use the volume name as the default disk name, if it's not blank. .3372 * Added metrics support for the StableBit Cloud: - Various metrics are supported, depending on the application (e.g. disk space, performance, bandwidth). - Metrics can be sent either in real-time (for immediate display purposes), or periodically (for historical statistics). - Real-time metrics require a live connection and will be enabled as needed, depending on the web app usage. - Historical metrics are sent at all times. - 3 transmission protocols are supported: - Unreliable secure UDP (very low overhead): used for real-time metrics. - Reliable secure UDP (low overhead): used for historical metrics. - JSON HTTP (normal overhead): used for historical metrics when UDP is not available or cannot be used due to poor network conditions. - Batching of multiple metrics is supported on all protocols for efficient transmission (up to 60 metrics per 1000 bytes for UDP). .3352 * If remote control cannot be started for any reason, show a warning in settings. .3350 * Remote control cannot be toggled off remotely. .3348 * Added the cloud DataInfo binder, enabling the ability to build real-time app UIs in the cloud. .3346 * Updated the remote control protocol to handle computer names more consistently. .3344 * Remote control fixes: - Fixed multicast when multiple connected adapters are present and the LAN adapter doesn't have the lowest interface metric. - Fixed hostname lookup causing ping timeouts. .3337 * Disk overview pane was not updating in real-time. .3335 * [Issue #28249] Applied fixes to the disk status pane. * Added a what's new link to the automatic cloud update dialog. .3334 * Added an automatic background installation option to automatic cloud updates. This is the new default for fresh installations. - Updates will be automatically installed only if the UI is not in use and the service is not performing any tasks. - Otherwise, a notification will be shown as before. * The service will now start and stop the notification UI automatically for all active sessions. .3322 * Require administrative access for the UI. .3321 * Improved the reliability of the live connection in the presence of heavy packet loss. * Added StableBit Cloud powered automatic updates. - Instant update notifications. No need to "check for updates", updates are pushed to you in real-time as soon as they're released. - Support for multiple release channels (Dev BETA, BETA, Release Final). - Automatic downloads. - Legacy automatic updates will be disabled when connected to the StableBit Cloud. * Added licensing Windows tray notification. .3303 .3301 * Added centralized licensing with the StableBit Cloud. - The local licensing UI will be inaccessible when using cloud licensing. * Added dev / local server toggles for the StableBit Cloud. * Added the ability to target specific versions with automatic updates. .3299 * [Issue #28232] Use a custom disk name (when available) for notifications. * Enabled StableBit Cloud integration: - Application settings synchronization: - Synchronizes all persistent settings to the cloud. - If something goes wrong and you lose your settings locally, or you have to reinstall the OS, simply connect the app to the cloud to restore your settings. - StableBit Scanner specific features: - Per drive persistent data (such as disk settings, scan history) are automatically synchronized across different app instances connected to the same StableBit Cloud account. * Optimized how Store item change notifications are issued: - Coalesce multiple item change notifications into a single notification if they are issued over the same object and happen within the same lock context. - Use 2 dedicated background item change notification threads that are separate from other change notification threads. - Do not throttle item change notifications if the maximum notification queue size is exceeded, simply drop any additional notifications and log a warning. RELEASE ======= 2.5.7.3565 ---------- * [Issue #28501] Fixed trial license expiration UI. * [Issue #28501] Simplified license expiration detection. * [Issue #28475] Fixed license activation under non-Gregorian calendars. 2.5.6.3336 ---------- * Remote control fixes: - Fixed multicast when multiple connected adapters are present and the LAN adapter doesn't have the highest interface metric. - Fixed hostname lookup causing ping timeouts. * Disk overview pane was not updating in real-time. * [Issue #28249] Applied fixes to the disk status pane. RELEASE ======= 2.5.5.3293 ---------- * Release final. BETA ==== * Do not issue SMART Warning notifications until SMART meanings had a chance to be queried from the cloud at least once (if cloud is enabled). * When matching a disk to its settings, update the fingerprint matching algorithm to take into account settings that were generated by versions of the Scanner that did not correct (using Direct I/O) an incorrect WMI disk size that was reported by Windows. * [Issue #28181] Fixed disk to controller association when a disk has > 1 controllers. * Fixed NVMe heat notifications. * When chkdsk returns error 9, retry up to 10 times and if the volume can't be checked mark it as unchecked. .3259 * When chkdsk returns STATUS_DLL_INIT_FAILED, retry up to 10 times and if the volume can't be checked mark it as unchecked instead of damaged. * Improved UI startup time. .3246 * [Issue #28094] DiskIds were being updated too frequently (every second). - If your system crashed during a DiskId write, there was a chance that the DiskId file would get corrupted which would lead to a settings loss for that disk (scan history, disk name / location, etc...). * [Issue #28084] If chkdsk returns code 10 retry with shell execute. .3220 * Made the licensing engine FIPS compliant. .3219 * [Issue #27982] Avoid loading corrupted persistent store nodes with duplicate IDs. .3218 * [Issue #27979] Added notification type to email subject. .3217 * [Issue #27951] Added an explicit log message when information about old disks is expired and deleted. * [Issue #27951] Added explicit log messages for how many store nodes are loaded and when damaged nodes are deleted. * [Issue #27951] Reduced log verbosity of AtaPassThrough and IdePassThroughCommands. RELEASE ======= 2.5.4.3216 ---------- * Release final. BETA ==== .3215 * [Issue #27924] Removed NotifyMyAndriod (NMA) notification options. .3214 * [Issue #27896] Do not perform SMART queries on HGST G-RAID devices. .3213 * [Issue #27899] Settings will now be backed up into a single ZIP file. - By default, today's date is used as part of the file name, and the file is placed into the user's Documents folder. - If the file already exists, you will be prompted to overwrite. - Restoring legacy *.json backup format still works. When choosing the file to restore, simply select any .json file in the backed up directory. * Fixed Vista / Server 2008 Auto theme selection. .3210 * Fixed sub-window centering over owner. 2.5.4.3209 ---------- * Fixed remote control race condition that was sometimes causing the service to crash on startup. * Fixed upgrade deployment issue on x86. * Added a link to open advanced settings from the standard settings dialog. .3205 * Improved settings restore / reset speed. .3204 * Excessive SMART warning notifications were being sent repeatedly. * [Issue #27880] Added settings management to advanced settings and troubleshooting. - Settings and application state can now be backed up and restored. - Backup / restore is not available over remote control. - When loading previously backed up settings, existing settings will be backed up and overwritten. - Also available is an option to reset all settings and application state to the defaults. .3199 * Added additional PCIe details from controller: - Differentiation between NVMe 1.0 vs 1.1. - PCIe version in use (and maximum supported). - PCIe width in use (and maximum supported). - Maximum theoretical speed in base 10 megabytes / gigabytes per second, not like drive size which is reported in base 2 mebibyte / gibibytes. .3198 * Some disk settings were getting erased when upgrading from previous builds that did not support DiskIDs for persistent disk identification. * Fixed console allocation for service on Windows 7. .3197 * Fixed BETA deployment issue introduced in .3192. * Sometimes, after ignoring an NVMe health warning, the attribute's UI would not update. * [Issue #27873] Fixed a service crash when loading NVMe ignore rules. * Fixed display of current SATA link speed of 6 Gbps. * [Issue #27872] Fixed processing SMART data that doesn't contain a threshold for every attribute defined. - Observed on an M.2 SATA based SSD (WD BLUE 3D NAND). .3192 * Disk idle % cannot be > 100. RELEASE ======= 2.5.3.3191 ---------- * [Issue #27871] Fixed deployment on x86. - There are now separate MSIs for x86 vs. x64. 2.5.2.3190 ---------- * Release final. BETA ==== .3189 * Updated with changes from ACS-4 and SATA 3.4. * Query if TRIM is enabled. * Query drives for the seek penalty. .3188 * [Issue #27870] CoveLib update. .3187 * [Issue #27865] When seeing an iR2022 for the first time, do not query SMART by default. .3186 * [Issue #27682] Expose the user configured disk name (from Disk Settings) to WMI. .3185 * [Issue #27708] Start updating disks after enumeration completes. .3184 * [Issue #27846] Do not fail service startup when VDS is damaged. Instead, continue with limited functionality. .3183 * [Issue #27834] Added a "Last Scanned" column that displays how long ago the oldest scanned block was scanned. .3182 * Do not switch to another disk if that disk was recently suspended. Scanner_SuspendSwitchLimit controls how recently (30 seconds by default). .3181 * Block size checkbox was not being synchronized among different disks. .3180 * Added new column "Disk Active %". This represents how busy the disk is 0-100 %. .3179 * [Issue #6313] Fixed HTML email encoding when using a custom SMTP server. .3178 * Added the ability to pause automatic scanning for 1 hour, 1 day, 1 week. 2.5.2.3175 ---------- * [Issue #27812] Installer was not respecting the user supplied installation path. - Reworked how the WSS Dashboard add-in works in order to support this. .3168 * Certain persistent settings were being wiped out prematurely (such as controller performance data, SMART meanings and others), which was causing them to be repopulated at each service start. - This was causing some strange behavior like erroneous SMART warnings triggering notifications. * Converted Store to JSON format for faster service startup. - The first service start will perform the conversion. Subsequent starts will be faster. .3166 * [Issue #27808] Added the ability to ignore existing NVMe warnings (similar to SMART). - For warnings that have a current value, the current value can optionally be ignored until it increases. * Added a settings option to simulate NVMe warnings. .3164 * Volume map block size is now based on actual allocated space on disk (for better accuracy with sparse / compressed files). .3160 * Extracted the volume map into a separate application under "StableBit Scanner - Tools". .3156 * Integrated NVMe health warnings into notification system (all providers). * Removed Pushalot notifications. .3155 * Integrated NVMe health information. .3153 * Fixed chkdsk error 3. * Added support for NVMe to disk details. .3148 * .NET 4.5.1 is now a prerequisite. .3147 * Added CRT 2017 (v141) dependency. .3146 * Layout / theme fixes. .3144 * Fixed opening web links. * Auto themes are now: - Windows 6.0 (Vista): - Server: Summer - Non-server: Vista - Windows 6.1 (Windows 7): - Server: Office 2013 - Non-server: Windows 7 - Windows 6.2 or newer (Windows 8+): - Server: Office 2016 - Non-server: Material * Tweaked the default window sizes for new installs. * Fixed some theme changing issues. * Added "Material" theme. * Remember and restore the main window's startup position. * Added "Fluent" theme. * The Windows Server Essentials add-in will now be installed by the setup EXE / MSI. - If you've previously installed using the WSSX installer, you must unistall the old add-in from within the Server Essentials Dashboard before installing EXE / MSI builds. Starting with this build, you will get a warning if this is the case. - The WSSX installer is getting deprecated. - The updated add-in and service are WSS-aware they will automatically detect WSS installations and switch into server mode. * Updated all autheticode signatures to use the latest Covecube Inc. EV certificate. * Fixed automatic launching of the UI after a new installation. * License transfer was sometimes being erroneously requested on boot. * UI was not immediately entering an activated state after license activation. * Office 2016 will be the default theme for Windows 8 and newer. * Added new themes "Office 2016" and "Office 2016 Touch". * Updated Telerik UI controls to the latest 2018 R1 SP2. .3131 * Fixed some typos. * Fixed SSD life progress bar. .3129 * Fixed DPI on PNGs. * Canceling an update download wouldn't work in a timely manner if the server wasn't responding. .3128 * Remember and restore the main window's startup position. .3127 * Added support for chkdsk /scan for NTFS on Windows 8 and newer. NTFS file systems will be automatically repaired online while being scanned. If an online repair is not possible, the volume will be flagged as unhealthy. * Compiled with Visual Studio 2017. .3126 * [Issue #27454] Check file systems on exFAT volumes. .3125 * [Issue #27430] When attempting to repair a locked volume with chkdsk, the option to force the repair and then to repair after a reboot was not working. .3124 * [Issue #27062] Fixed how notification types are raised / cleared. .3123 * [Issue #27117] Added more details to the file scan error message that comes up when the disk cannot be scanned because of unavailable geometry information. .3122 * Fixed Pushover notifications (priority parameter spec changed on their API). .3121 * [Issue #25957] When SMART meanings were not available for a drive, issuing a tray notification warning using the default meanings would throw an error. .3120 * [Issue #26007] When Email / SMS sending fails due to a network issue, the correct error message was not being shown. .3119 * Updated code signing certificate to SHA-256. .3117 * [Issue #24908] Disabling SMART using Disk Settings didn't reset SMART notifications. .3116 * Added RemoteControl_FastShutdown that will bypass socket cleanup when enabled. Don't enable this unless your OS is having issues closing sockets. * Always use the Raw sector verifier for drive size verification. * Never allow the service EXE to load twice. .3109 * Apply the corrected size / bytes per sector / sector counts to the sector map on each service start. * When correcting the size of the drive, also correct the bytes per sector and the sector count, but only if we can validate the last sector. * When reading the disk signature from the disk using Direct I/O, use the real bytes per sector. Some drives (like the WD My Passport) will show up, incorrectly, as having 4096 bytes per (virtual) sector. * When correcting the total size of the drive, validate the last sector before applying the new size. While this works for most drives, some drives (like the WD My Passport) will report an incorrect size. * If a manual scan was started on some disk, then automatic scanning was toggled on, and the disk that was being scanned manually was not scheduled to scan, then the manual scan could not be stopped afterwards. Also, the service would not shut down properly in this state. .3108 * [Issue #14557] Added DirectIO_DoNotCorrectSize advanced setting. When set to True, we won't correct the drive size based on the data that we get back from the disk directly. The service will need to be restarted for this to take effect. .3107 * Fixed disk list UI lockup when adding or removing disks. * Fixed disk list UI lockup right after launch, when there are a lot of disks listed. .3106 * Sometimes it would take an extra minute for all the disks to show up in the disk list, right after a service start. .3104 * [Issue #20810] Fixed how SMART meanings data is used when data from the cloud is not available. 2.5.2.3103 ---------- .3102 * Windows 10 support. - Recompiled everything using Visual Studio 2015. * Updated WiX Toolset to 3.10 RC. * Licensing fixes. 2.5.2.3100 ---------- * Fixed recovery file list not updating after recovery attempt. * [Issue #14566] Ignore the HP Proliant virtual disk. * StableBit CloudDrive disks will now be recognized and, by default, their surface will never be scanned automatically. You can override this behavior in Disk Settings. * Fixed file system repair (chkdsk). * [Issue #12374] When connecting via RDP, the list of disks would go blank. * The Dashboard add-in now runs in a separate AppDomain, fixing any potential future DLL conflicts with other add-ins. * [Issue #12374] Updated Telerik controls to the latest version. * [Issue #13478] Use the sector count reported by IDENTIFY if the sector count reported by Windows is smaller. * Fixed an issue where the license would get into a "transfer needed" state, where a transfer was not needed and would not exit this state until a restart. * Changed how CoveFS drives are detected. * [Issue #13455] Added fallback code for when listening for device change messages fails from WMI. * [Issue #12394] Added support to enable / disable SMART under disk control. Note that this toggles SMART support in the disk firmware not just in the StableBit Scanner. * [Issue #13425] Ignore temperature pre-fail attribute on Kingston SSDs. * [Issue #12410] Consider SAT a safe pass-through method for non-USB devices. * [Issue #12409] Activation ID text can now be mangled. * Signed all binaries with Covecube Inc. Authenticode certificate in hopes of preventing false positive A/V warnings. * [Issue #12383] Fixed updating mount points for dynamic disks. * [Issue #12375] Fixed file scan / recovery of NTFS volumes with file records that span multiple clusters (E.g. 512 byte clusters). * Added WinPE compatibility. * Added a few WMI properties. * [Issue #10342] Rewrote the metadata cleanup code from scratch to use a simpler method. The old code wasn't cleaning up metadata consistently leading to excessively long service startup times and other issues. * [Issue #10342] Added error reporting logic around old metadata cleanup. * [Issue #10347] A SCT maximum operating temperature of 0 C is not valid. RELEASE ======= 2.5.1.3062 ---------- * Added advanced setting Scanner_ScanMaximumConcurrent that allows multiple disks to be scanned at the same time, on the same controller. * Exposed .config settings in the UI under Settings -> Advanced Settings -> Configuration Properties. * [Issue #9342] Fixed issues with controller performance measuring interacting with disk performance measuring. Controller performance was sometimes not being measured properly and disk performance would be blank after the system woke up from a sleep state. * [Issue #9337] Automatically select the "Server" quick settings profile for new WSS installations. * [Issue #9337] Allow the standalone UI to run alongside the Dashboard UI. 2.5.0.3053 ---------- * Release final. BETA ==== * [Issue #6335] Fixed the "Ping" column. * Fixed notification tray icon not working properly after service restart. * The new heat settings should default to the correct values based on the selected quick profile. * Performance was sometimes not being sampled after connecting a new disk. * [Issue #6322] Fixed potential crash when cleaning up old disk metadata (> 365 days). 2.5.0.3048 ---------- * Temperature equalization was sometimes considering disks that don't properly report their temperature. * Suspended scans were sometimes incorrectly being restarted immediately after being suspended. * Cleaned up core scanning algorithm code. * Fixed crash on row rearrange. * Fixed an issue with the automatic temperature threshold's Fahrenheit / Celsius conversion. * Tweaked performance / disk queue mini-charts. First point used to be 0 sometimes. * Implemented a workaround for a Telerik bug where some list items would show up as empty after adding / removing a disk. * Updated to the latest Telerik controls. * Fixed Office 2013 theme issues. * [Issue #5232] Blacklisted the Rockbox Internal Storage / SD Card Slot as per reported issues. 2.5.0.3041 ---------- * Various text fields in the SMART / Disk Details windows are now selectable, allowing you to right click on them and copy the text to clipboard. * [Issue #5238] When connecting multiple disks that cannot be reliably uniquely identified, multiple issues arose. - Disks can't be identified uniquely, for example, when not exposing their S/N and not being initialized. - Uninitialized disks where the S/N was the only unique identifier was not being used to uniquely identify the disk. * Added little cloud icon next to information that is retrieved from the cloud in "Disk Details". * Added display of all firmwares that were seen for a particular disk model. This is retrieved from BitFlock. - Shown under "Disk Details" to the right of your firmware, if other firmwares were ever seen. * Added CDL GB/day of host writes, mainly for SSDs. - SSDs sometimes publish how many GBs they are designed to write per day. Exceeding this value will shorten the expected lifetime of the SSD. - For example, "SSD is rated for 20GB/day of host writes for 3 years". - This statistic will show up under "Disk Details" when available. * Lowered the default static maximum drive temperature to 44C, for the "Server" profile. Hard drives that are operating on a 24x7 duty cycle are generally meant to be running at around 40C in order to achieve maximum MTBF. * Added option to specify overheating threshold. If the drive temperature approaches the manufacturer's maximum operating temperature by this number of degrees a temperature warning will be issued. - See Scanner Settings -> Heat -> "Warning threshold:" - If this is disabled, an overheating warning will be issued only if the drive temperature exceeds the manufacturer's maximum operating temperature. - Enabled this by default for the "Server" profile. * Added annualized failure rate (AFR) and component design life (CDL) to the Disk Details' new drive "Reliability" section. - CDL will be shown if published by the manufacturer. - AFR will be shown if published by the manufacturer or calculated from the MTBF assuming a 24x7 duty cycle. * The MTBF and maximum load cycle counts will be shown on the SMART screen, if available (under the appropriate attribute). * Merged all Telerik controls used by the Scanner into 2 portable assemblies. This allows the Scanner to run alongside other assemblies that use Telerik controls in the same process (E.g. Dashboard). * The maximum operating temperature for a disk can now be optionally retrieved from the disk's SCT and the BitFlock cloud. - To enable: Scanner Settings -> Heat -> "Use manufacturer specified maximum operating temperature..." - When enabled, the maximum operating temperature will be retrieved from the disk using SCT, if available. - The temperature is also retrieved from the BitFlock cloud based on the disk model. BitFlock contains disk metadata such as maximum disk temperatures, as they are published in the manufacturer specification sheets. - Maximum operating temperature can always be manually overridden on a disk by disk basis in "Disk Settings". - The current maximum operating temperature will be shown in the SMART window, under the temperature attribute, and where it's coming from. * Performance charts in the main window will now show an instantaneous 2 second performance value and a 10 second historic chart. * Charts in the disk details window will now show up to 30 seconds of performance data and a 2 second instantaneous performance value in the legend. * Converted all chart controls (disk details / SMART / burst test) to use the new high performance charts. * New theme: Visual Studio 2013. * Updated Telerik controls to Q2 2014. * New UI themes: - Office 2013 - Office Black - Office Blue - Office Silver - Summer - Transparent - Vista - Windows 7 (original updated) - Windows 8 - Windows 8 Touch (tablet friendly) * UI themes can now be selected from Scanner Settings. * Tooltips were not utilizing line breaks properly. * [Issue #2146] The UI now supports 3 themes and will look different depending on the OS running. (Windows Vista / Windows 7 / Windows 8+) Telerik controls were updated to the latest version. * Fixed UI getting out of sync with the service. This was causing the disk temperature to disappear among other issues. * [Issue #4217] Added error reporting logic to the file system "Searcher" and "Recoverer". * [Issue #4213] Fixed possible null reference when updating a disk's attributes (SMART / performance). * [Issue #4215] Fixed stuck on "Initializing". * [Issue #47] Re-factored licensing code to prevent the licensing request from showing up unnecessarily. * [Issue #3195] The warranty period will now be shown in disk details, when known. This information comes from the manufacturer's specifications. * [Issue #3195] The load cycle count warning threshold is now retrieved from BitFlock. The maximum load cycle count will be updated from the manufacturer's specifications, when available. If not known, a default of 600,000 cycles will be used. * [Issue #2181] Fixed notification tag error. * [Issue #1134] Added new .config setting Disks_MaxDegreeOfParallelism. * Fixed an issue related to the new non-modal SMART / Disk Details windows, where the Dashboard would crash periodically. * [Issue #1162] Changed the theme to Metro on anything newer than WHS 2011 / Windows 7. * [Issue #1162] Made the WSS tab title dynamic based on what OS it's being installed on. For WHS 2011 it will continue to say "StableBit Scanner" and for anything newer it will say "SCANNER" to better match the style of that OS. * [Issue #1129] Make sure the UI doesn't crash when the service stops or a reconnection takes place while you have one or more windows open. * [Issue #1129] SMART / Disk Details windows are now non-modal. * [Issue #1136] Added error reporting logic to WMI event firing. * [Issue #88] Optimized the sector map to deal with displaying 100,000+ bad sector regions without stalling the rest of the UI. * [Issue #75] When scanning outside of the time window due to a past due setting, only rescan the sectors / file systems that are past due, instead of sectors / file systems that are past the re-check period. * [Issue #75] Take the past due setting into consideration when selecting file systems for a re-check. * [Issue #75] Disk check info device ID should be updated on each service restart, as it does not persist on reboot. * [Issue #71] Increase "starting service components" timeout error reports from 30 to 60 seconds. * Added .MSI creation to deployment script. * [Issue #49] Added SMTP support for sending email notifications. See: http://wiki.covecube.com/StableBit_Scanner_Advanced_Settings 2.5.0.2978 ---------- * [Issue #29] Added logging capability to DiskCheckInfo. * [Issue #29] Added additional logging to DiskSelector. * When the SMART temperature attribute is past its threshold, do not show the user specified maximum temperature in any human readable text (because the maximum temperature in this case is set by the manufacturer). * [Issue #18] Automatic file system checking was not working for physical disk 0 under some circumstances. * [Issue #18] Scheduler was not handling day of week scanning preferences properly by consuming too much CPU on the days that it was not supposed to be scanning (checking too often). * [Issue #18] When starting a manual disk scan of a specific disk, and when you're not in the scanning window, turn off automatic scanning. * Updated code signing certificate (2014). * [Issue #16] Do not enumerate StorLib virtual disks. * [Issue #12] Fixed DPI scaling issue with licensing window. * [Issue #14] Fixed Windows Server 2012 R2 Essentials role setup (in wssx). * [Issue #9] Added comprehensive SMART logging on Verbose level for SmartDiskInfo. * [Issue #9] Added "Advanced settings" that can be enabled from the Scanner Settings dialog. Once enabled, advanced settings are available from the Settings drop down and let you control the logging levels of the various StableBit Scanner components. * [Issue #9] Added logging capabilities. Logs will be saved to %PROGRAMDATA%\StableBit Scanner\Service\Logs. 2.5.0.2968 ---------- * Added "Notification Templates" directory under the service Program Files directory * Added an option to automatically propagate a site name to all copies of the StableBit Scanner running on the LAN, which don't already have a site name specified. * Added an option to specify a site name for all notifications (e.g. Home, Office, etc...). If specified, site names will show up in the notification text. * Rewrote the notifications UI as a separate dialog window. - Input is now validated for Email addresses and SMS phone numbers. - Added test buttons and test dialogs for each notification provider. - You can now easily enter multiple email addresses and SMS numbers. - Twitter authorization is handled from the Twitter notification tab. - For speech notifications you can now select the voice (Windows 8) and rate of speech. * Added additional notification providers and revamped existing ones. - All notification providers now have a "Test" function. - New SMS provider for receiving notifications on your cell phone. - SMS messages will be sent out for every discreet notification generated. - SMS messages > 160 characters will be automatically split up into multiple messages. - SMS receivers will get instructions on how to permanently block StableBit.com SMS notifications from going to their cell phone, the first time a SMS is sent to any number. (reply with STOP to block or START to unblock) - New Twitter provider for tweeting your notifications out or direct messaging them to yourself or another twitter user. - Tweets will be sent out for every discreet notification generated. - Tweets > 140 characters will be automatically split up into multiple tweets. - New Pushover provider for sending notifications to iOS and Android. - New Pushalot provider for sending notifications to Windows Phone and Windows 8 (Modern UI). - New Notify My Android provider for sending notifications to Android. - Updated the Speech notification provider with options to select different voices (Windows 8) and to control the rate of speech. - Updated the Email notification provider to include the disk serial number. * Completely rewrote the back-end of the notification system. - Notifications will now remember their last state, even when the service is shut down and restarted. - This means that repeated notifications will not be resent on every reboot. - Notification now have the choice of reissuing a notification if another disk has an issue in the same notification category (e.g. One disk overheats and then some time later another disk overheats). - It is up to the notification provider to decide whether to reissue the notification in this case. (Email, SMS and Twitter will reissue, the Windows tray notification will not) - Heat notifications now have an optional cool down threshold. This prevents redundant notifications from being sent when a disk's temperature is hovering close to the overheating limit. - If set, when a disk enters an overheating state, it will not leave the overheating state (at least as far as notification are concerned) until the temperature drops some N degrees below the overheating limit. - It now supports a greater variety of notification providers: - Providers that need to raise an overall alert for a problem (e.g. tray notifications). - Providers that need to send a unique notification per issue detected (e.g. SMS or Twitter). - Providers that need to send a unique notification per issue, while at the same time aggregating all existing problems in a category (e.g. Email). * Changed how we process arriving and departing disks in order to prevent a potential lockup. * Changed the WMI locking model slightly to prevent potential lockup. * Fixed the sector map getting cut off on the right in the row details presenter. 2.5.0.2954 ---------- * When saving remote credentials, if you entered the wrong credentials, you would not be able to bring the credential dialog back up. * Fixed some strange UI behavior with the disk details pane. * Added remote control. * If Windows is reporting an unusually small disk size, then update it with the disk IDENTIFY data. * Added "TemperaturePreferenceIsF" to WMI interface. 2.5.0.2940 / 2.5.0.2941 ----------------------- * Added .config setting to further limit the automatic scan window to certain days of the month, as requested. (See Scheduler_LimitToDaysOfMonth) * Added option to only scan on certain days of the week, as requested. * Rewrote the way that we associate disk check metadata and disk settings with disks. Previously we only used the disk signature that is located in the MBR or GPT to uniquely identify disks in order to associate past disk health data with that disk. This works most of the time but has issues when you want to identify a disk uniquely that has not been initialized yet, or a disk that has been cloned. The new system uses various points of identification, each having a higher priority than the next. Starting from highest priority to the lowest: - Direct I/O disk serial number - GPT Signature + WMI Serial number + Disk size - GPT Signature + WMI Model + Disk size - GPT Signature + Disk size - MBR Signature + WMI Serial number + Disk size - MBR Signature + WMI Model + Disk size - MBR Signature + Disk size Since the disk serial number may not be available at all times, we can fall back to the legacy method of using the MBR / GPT in combination with the disk size. The new system works correctly if you plug in a disk into a port that allows access to a serial number, and then plug in the same disk into a different port that does not provide an accurate serial number. For the second connection we will fallback to the less reliable MBR / GPT method, but we will still attempt to match the disk with the correct scan data. Also, your old disk metadata will be automatically upgraded to the new Disk ID method, but the new system is not backwards compatible. Downgrading will wipe out your settings and scan history. RELEASE ======= 2.4.0.2928 / 2.4.0.2929 ----------------------- * Fixed floppy access on UI open. BETA ==== 2.4.0.2926 / 2.4.0.2927 ----------------------- * Fixed a bug in the UI causing excessive CPU consumption. 2.4.0.2922 / 2.4.0.2923 ----------------------- * Disk temperature will now be reported in either Celsius or Fahrenheit (see Scanner Settings -> Heat). It defaults to your regional settings in Windows. * Added 'Case' and 'Bay' to email notifications. * If the disk's SMART data provides an attribute for temperature, then use that to determine if the disk is hot. Use the user specified value (in Scanner Settings) if it's lower. * Deselect any selected quick settings profiles when user makes a manual change to settings. * Added past due setting to quick settings profiles: - Server 14 days. - Generic 30 days. * If the service or the computer crashes while an ongoing scan is in progress, the scan progress prior to the crash will not be lost. * Changed the option that limits SMART queries to the work window, to permit SMART queries at any time, if the disk is either actively being scanned or is waiting to be scanned. * Added a new option to scan outside of the scan window, if a disk scan is "past due" by some number of days. Defaults to 30 days. (Scanner Settings -> General). 2.4.0.2914 / 2.4.0.2915 ----------------------- * Added new scan options to handle removable media better. (see Scanner Settings -> Scanner). * Do not query USB / removable Flash drives for SMART. (Smart_DoNotQueryRemovableMedia and Smart_DoNotQueryUnknownMedia in .config) * Do not crash if a disk has no name. * Fixed incorrect IDENTIFY / SMART data being reported on drives connected to secondary ports on some SiL controllers. * Removed SAT pass-through (12) from the safe USB pass-through list due to reports of it crashing some USB thumb drive controllers. (16 is still enabled) * Fixed BitFlock USB pass-through method hint use. If there is a hint we will now be forced to use it. 2.4.0.2908 (WSS) ---------------- * ESET's NOD32 anti-virus was incorrectly flagging the .wssx file as a Trojan. Only their anti-virus was doing it, and no one else's. The problem was an EXE that stops / starts the service during the upgrade process. Recompiling the EXE with the zlib compression and no code changes resolved the false positive. Otherwise this version is identical to 2.4.0.2905. 2.4.0.2904 / 2.4.0.2905 ----------------------- * Added a repair option for damaged volumes. - Is able to forcefully un-mount the disk, if there are handles open to the volume. - Is able to schedule a repair on next boot, if the disk cannot be forcefully un-mounted (E.g. system drive, or a disk with page file). 2.4.0.2900 / 2.4.0.2901 ----------------------- * SMART Failures were not being reported in the Dashboard. (WSS only) * Drive letter assignment is now refreshed properly. * Added support to automatically check the health of your file systems. - File system scanning is streamlined into the existing scanning process and is automatically performed after a surface scan. - chkdsk is used, but with some additional features. - Ability to scan using Background I/O, which also lowers the paging priority (since chkdsk tends to use a lot of RAM). - Ability to suspend a scan if a drive overheats. - Support for temperature equalization. - Scan progress is reported in percent. - File system health is reported when you expand a disk and in the "Status" panel at the bottom. - You will get a notification if a problem is found (Email, System tray, Speech and WSS). - File system scans can have a separate re-check interval and can be suspended globally or per disk. * Scanned sectors will now slowly turn from green to yellow, to indicate the "age" of the last scan. If a sector has not been re-scanned in 2x the scanning interval, it will turn fully yellow. This gives you a quick visual indication of how long ago the last scan was performed over those sectors. * Fixed SMART Warning vs. SMART Failure notification mix-up. RELEASE ======= 2.3.2.2885 / 2.3.2.2886 ----------------------- * Added code to automatically turn off BitFlock SMART auto-submission if the last attempt fails. * Rendering / data updating optimizations. - Now using the latest DataInfo library which includes property update filtering and the DispatcherQueue. - Commonly used images are now automatically cached and are not reloaded every time. - Disk status and overall status computation optimizations. 2.3.1.2859 / 2.3.1.2860 ----------------------- * In the file scan, when non-recoverable entities are detected (such as unknown file systems), do not allow the user to start recovery on those entities. * Open Scanner in local notifications was not working on x64 and only in the Release build (non-WSS only). * Increased SMART query timeout in the Release build. It was timing out if you had many disks and SMART would not show up in a timely manner. 2.3.0.2850 / 2.3.0.2851 ----------------------- * Always perform update check after log in (non-WSS). * Stopping the service now properly exits the service process. * Fixed issue with local SMART warning notifications (non-WSS). BETA ==== 2.3.0.2842 ---------- * Added speech notifications (Scanner Settings -> Notifications). * Added additional third party WMI fields for the latest DrivePool integration (Model / Serial / Case / Bay). When running DrivePool 1.3.0.7319+, these will show up under missing disk identification and the pool tab. * When WMI fails registration, report an error and continue service startup instead of failing. 2.3.0.2833 ---------- * WSS build. 2.3.0.2832 ---------- * Added email notifications using Windows Azure + Amazon SES (Scanner Settings -> Notifications). * Added the ability to submit drive information and SMART data to BitFlock for analysis. This will create a pseudo-nest that is invisible from the Internet. To enable it, see the bottom of the SMART details window. RELEASE ======= 2.2.0.2819 ---------- * Advanced format sector information was not being reported properly. * Updated with SATA 3.1 spec. * Fixed pointer overflow in Microsoft's library when showing SMART ignore warning dialog. * Added new welcome screen with support for 4 different settings profiles (mostly for non-WSS). - Tablet - Scan more often but only while charging. - Laptop - Never scan while on batteries, and scan sparingly. - Desktop - Scan any time of day while not interfering with disk access. - Server - Scan only at night, do not throttle but still de-prioritize the scan I/O. * Added option to prevent automatic scanning when the system is running on battery power. When enabled and the system transitions to battery power, any currently running scans that have been started automatically will be stopped. Scans will be resumed when the system goes on A/C power, if we're in the user configured work window. Any manually started scans will not be affected by this option and will continue. BETA ==== 2.2.0.2723 ---------- * Added "Burst Test". Right click on a disk and click "Burst Test..." A Burst Test stresses the disk controller for an extending period of time by reading faster than the physical disk is capable of. This can be used to stress test the entire chain of components leading to disk access such as the disk controller, disk enclosure and cables. One use of this test is to test for disk "drop out" when a disk is under stress. This test is based on a USB 3.0 testing procedure but is applicable to other technologies as well. * Added the ability to ping a disk. Right click on any disk and click "Ping disk". Expose the "Ping" column to see the response time. The response time is the average time to read 1 MB from the disk for the past 10 seconds. Pinging a disk is also an easy way to visually identify a particular disk. Just look at the disk access light for disk activity every 1 second. Pinging can also be used to test for disk "drop out". If a ping is interrupted by the disk dropping out, "Error" will be shown in the Ping column in red and pinging will not continue. Unlike burst testing, pinging is very light on system resources. * Added ability to designate locations for drives. Each disk now has a 'Case' and 'Bay' that can be set up in "Disk Settings". The idea is that each disk is located in some Case at a particular Bay. Disks can be grouped by bays and sorted by cases. There is also a new location column. Both cases and bays are free-form text, but bays are numeric-aware in terms of sorting. * Added advanced option to turn off WMI SMART queries (Smart_NoWmi). 2.2.0.2706 ---------- * Added WMI provider for third party integration. In: \\root\StableBit\Scanner 2.2.0.2668 ---------- * Got rid of the extraneous reboot on update. 2.2.0.2654 ---------- * Fixed URLs not opening in licensing window on Windows. 2.2.0.2613 ---------- * Added option to query the power mode for a disk directly. When this is enabled Windows will never put the disk to sleep, but the Scanner will report power mode states directly from the disk. This is useful in confirming that the on-disk idle timer is working. * Added option to not query a disk if it has already spun down. We try to ask both Windows and the disk itself. * Added setting to only query SMART during work window. * Added setting to throttle SMART queries to some number of minutes. This is useful if SMART queries are preventing your disks from spinning down. Set this to some value HIGHER than the spin down interval. 2.2.0.2602 ---------- * Public BETA for Windows. RELEASE ======= 2.1.0.2601 ---------- * Scanner ported to Vista+ (public BETA in a few weeks). - Columns / window sizes will get reset because we now store per-user settings in a non-administrative location. * Added automatic updating (Vista+). * Added tray notifications (Vista+). * Added option to prevent system from sleeping while scanning (enabled by default). * Added option to wake up system before scan time (enabled by default). * Updated installer for compatibility with the next DrivePool release. 2.0.1.2467 ---------- * Notifications were coming up for disks that were disconnected. 2.0.0.2461 ---------- * Do not raise the scan thread's base priority when enabling background I/O priority. * Fixed bad sector notification not coming up. BETA ==== 2.0.0.2427 ---------- * Extracted the Direct I/O scan settings from the UI into the .config and disabled by default. Needs more testing regarding throttling. Some busses behave badly when using this method. They tend to halt or severely slow down I/O targeted at other disks. * New Starting and Stopping state for disk scans. * Stopping a scan is now asynchronous and done in parallel for all disks. * Some drives incorrectly report 0 degrees C as the SCT temperature. If this is the case, correct it to a "not available" value. * Added SSD life meter to SMART window for supported disks, as determined by BitFlock. * Fixed disk signature verification on GPT formatted disks. * Added option for the Scanner to create a file on a disk when it's actively scanning one or more disks. Can be used for third party integration. (See .config - Scanner_RunningFile) 2.0.0.2384 ---------- * Added setting to limit the number of disks that are scanned concurrently with Direct I/O in Scanner Settings. * Added new Disk Queue column. Shows how many I/O requests are waiting to be sent to the disk. These are all I/O requests, not just ones generated by the Scanner. * Improved scan throttling for Direct I/O scanning. 2.0.0.2362 ---------- * Added option to refresh BitFlock interpretation data (on a delay). * Added some more BitFlock format types. * Sorting by Size did not work properly. * Faster initial startup time for service. Disk enumeration is now parallelized. * Notification checkboxes in settings now work. * Added a new method of scanning the disk, using Direct I/O. See Scanner tab in settings. When enabled, verification sector commands will be sent directly to the disk. The drive will read the entire contents of the sector and verify the checksum, without returning any actual data. This will speed up disk scanning over BUS limited devices, such as USB 2.0, or if you have many disks connected to the same controller. Because this scan method hardly consumes any bandwidth, you can scan as many disks at the same time as you want, even on the same controller. Heat throttling continue to function, yielding on overheating disks. Scan throttling still needs to be optimized for this scan mode. Direct I/O scanning requires Direct I/O to be available on the disks being scanned. If it's not, then the standard scanning method will be used. In addition, the Scanner will perform some statistical analysis while performing sector verification and will disable it on some disks if it is not working properly with your particular enclosure. 2.0.0.2245 ---------- * Rewrote raising / hiding WSS notifications. * Fixed columns not being saved. * Added new 'Age' column to main screen. * Fixed UI issues, including removed disks lingering after they were removed. * Enabled SMART health links on main summary panel. * BitFlock <-> Scanner integration is now via. Azure. * A new type of SMART warning based on advisory attributes. This includes a new type of ignore rule for such warnings. The ignore rule will be generated automatically when you choose to ignore this new type of warnings. * Revamped the SMART window to show all the new BitFlock detail. * Each attribute is now monitored in more than one way, and you can visually inspect how by clicking on it. * BitFlock attribute descriptions are now shown. * Added new BitFlock group identifier. * Added new BitFlock attribute types. * Added new BitFlock interpretation formats. * BitFlock has been massively updated with new data and new health rules. 2.0.0.2123 ---------- * When more than one disk has the same signature, do not crash the service. 2.0.0.2122 ---------- * Fixed a few Dashboard crashes. * Included the service .config with installer (See C:\Program Files (x86)\StableBit\Scanner) * UI settings were being reset on upgrading. * Disk scan start synchronized to protect against multiple unintentional disk scans. 2.0.0.2066 ---------- * Added 2 different yield points for UI update throttling on slower systems. Yield in dispatcher pool, if the current task took > 100ms. Come back in 100ms. Yield on store update if dispatcher queue is > 250ms. * Added a UI performance overlay for debugging the BETA, hit 'P' to activate. * Created a custom dispatcher pool to manage UI marshaling behavior. 2.0.0.1918 ---------- * Removed redundant UI updates. * Fixed UI update freezes. * Fixed runaway memory consumption in the Dashboard, especially on slower systems. 2.0.0.1878 ---------- * Uninstaller fix. Uninstalling 1873, while DrivePool was installed, would break the Dashboard. To fix, install this build, start the Dashboard and remove the Scanner. 2.0.0.1873 ---------- * Cleaned up some excessive memory consumption in the service while scanning disk surface. * Save selected sector size. * Added file scan and recovery engine. * When a disk has bad sectors on it, an option will become available to scan for damaged files as a result of the on-disk damage. You will then be able to select one or more damaged files and attempt recovery to an external location. * The file scan and recovery engine from Scanner 1.0 was cleaned up, optimized and extended to support GPT disks and batch file recovery. * A brand new UI for file scan and recovery that does away with the old Wizard interface. * Damaged on-disk entities are listed as the file scan progresses in real-time. * You can attempt recovery for one or more damaged NTFS files. * Updated all UI controls to the latest versions. * Added per-disk maximum temperature override. * Disabled SAT for non-USB drives by default. Enable unsafe mode to use (.config). 2.0.0.1282 ---------- * Do not show / scan Covecube virtual disks. * Do not show / scan VHD virtual disks. * Updated to licensing 2.0. * Enabled SAT for non-USB drives. * Added Background I/O option to scan settings. 2.0.0.1267 ---------- * Ability to turn off automatic scanning, per-disk (see disk settings). * Fixed crash when adding notification if SMART was not available. 2.0.0.1261 ---------- * Added per-disk settings. These settings are stored in the Scanner's store and are associated with a particular disk. They are not stored on the disk itself. * Give your disks a custom name. * Disable SMART. * Disable Direct I/O. * Added option to "ignore" a SMART warning for a particular disk. Ignore is intelligent, where it will re-issue the warning if any of the problem attributes change. There is also the option to permanently ignore all SMART warnings on a per-disk basis. To access this feature, a new button will become available on the SMART dialog when you have SMART warnings issued for a disk. 2.0.0.1220 ---------- * Fixed version mismatch. Would not start a scan. * Updated package signature with timestamp. 2.0.0.1217 ---------- * Under some circumstances, licensing could have asked you to transfer your license when you plugged in a new disk. 2.0.0.1188 ---------- * Reworked the controller enumeration code to handle disks that don't have controllers or return errors when enumerating their controllers. * Put in some error handlers to guard against invalid disks. 2.0.0.1169 ---------- * Don't crash if the drive doesn't report an interface. * Fixed crash when opening disk context menu with no disk IDENTIFY. 2.0.0.1168 ---------- * Disk usage tree map (still a bit rough). * Standby command in drive context menu. * Standby timer control. * Display idle unload capability. * Display power state of drives in a new column. 2.0.0.1051 ---------- * Added advanced power management control for supported disk drives. * Added USB pass-through for SCT temperatures, for supported enclosures. * Fixed historic SCT temperature values. 2.0.0.1020 ---------- * Added disk control dialog. * Automatic acoustic management (AAM). * Added SCT support. * Current temperature. * Life maximum / minimum. * Manufacturer recommended maximum / minumum limit. * Temperature sample history, as recorded by drive. * User can change sample interval (this is on the drive itself). 2.0.0.972 ---------- * Added drive mount point / drive number to columns in the main disk list. * Fixed licensing server address. Deployed the last version pointing to internal test server. Made appropriate changes in the testing setup to catch this next time, before deployment. 2.0.0.968 ---------- * Added SATA 3.0 spec related parameters (6.0 Gbps, etc). * Fixed BETA licensing upgrading issue. * Fixed disk identification code. (will reset all history, sorry) * Fixed disk signature for GPT disks. 2.0.0.939 ---------- * Automatic updating uses the built-in WSS add-in update mechanism. * Supports all the features from 1.0, except file recovery (coming soon). * The WSS Dashboard interface was written from scratch using WPF. * The entire back-end was ported from 1.0 to work on Windows Server 2008 R2. * First public BETA.