I've been experiencing the below issues in FileOptimizer (FO) for all versions released since Nov 2022.
Observation:
At every run, FO fails to remember/ respect/ restore user-set coordinates for Window Size, Window Location, & Column Widths.
When the above are manually changed in the GUI:
(Width=1440 x Height=747)
(ColWidth=178)
If user specifies the coordinates by editing INI config file & sets the file to Read-only:
Working Versions:
Affected Versions:
PersistentGrid
etc introducedBuild Tested:
FileOptimizer x64 (portable, extracted from FileOptimizerFull.7z.exe
)
Program & INI File Location:
Non-system drive (eg. D:/Portable/FileOptimizer/
), with all admin & access rights
FO's INI File Encoding:
UTF-8
OS: Windows 10 x64, Dark mode, English (US)
Screen: 1 only (laptop)
Display Resolution: 1920 x 1080 (recommended)
Scale & Layout: 125% (recommended)
GPU: NVIDIA, discrete
Window Position + Size & Column Width Coordinates in FileOptimizer64.ini
config file:
v16.00.2746 (09 Sep 2022) & older:
As set by user & successfully restored/remembered by FO at every run:
[frmMain]
Left=816
Top=504
Width=1052
Height=499
WindowState=0
DefaultMonitor=3
Col0Width=517
Col1Width=89
Col2Width=129
Col3Width=129
Col4Width=155
AlwaysOnTop=true
Language=0
v16.10.2762 (17 Nov 2022) & newer:
FO ignores user-set coordinates & restores the below at every run -- just launch & exit FO w/o doing anything else.
PersistentGrid=false
(default) & AlwaysOnTop=true
(default: false) makes no difference in solving the above issue.Note: If PersistentGrid=true
: List the same contents (ie. selected input files) within file grid across run sessions
INI config values from 3 sample consecutive runs are tabulated below:-
[frmMain] |
Run 1 | Run 2 | Run 3 |
---|---|---|---|
Left |
224 | 32 | 96 |
Top |
224 | 32 | 96 |
Width |
1440 | 1440 | 1440 |
Height |
747 | 747 | 747 |
WindowState |
0 | 0 | 0 |
DefaultMonitor |
3 | 3 | 3 |
Col0Width |
714 | 714 | 714 |
Col1Width |
178 | 178 | 178 |
Col2Width |
178 | 178 | 178 |
Col3Width |
178 | 178 | 178 |
Col4Width |
178 | 178 | 178 |
Additional Observations
If I set
LogLevel=4
, there are no errors recorded in FileOptimizer (FO)'s log file (FileOptimizer64.log
).Inspecting FO in Nirsoft's SimpleProgramDebugger (SPD)
Run & stop
FileOptimizer64.exe
process from within SPD w/o doing anything else.Below are the main differences in the kinds of DLLs loaded by FO.
v16.00.2746 (09 Sep 2022): OK
C:\Windows\system32\d3d11.dll
where:
d3d11.dll
= Direct3D 11 Runtimev16.10.2762 (17 Nov 2022) & newer: Affected
FO loads & unloads a different set of DLLs:
where:
d2d1.dll
= Microsoft Direct2D Librarynvldumdx.dll
&nvd3dumx.dll
= DirectX DDI & OpenGL ICD drivers for NVIDIA GPUs (for hardware acceleration)Exception Code: 0x0000071a
Meaning: The remote procedure call (RPC) was cancelled.
The issue of non-persistent Window Position & Window Size across run sessions is likely related to the description posted by user @edwardtruong at discussion thread [10e412e233], but w/o much detail about his system set-up.
As he further mentioned at post [10e412e233#55fa] (21 Feb 2023), his issue also started since FO v16.10.2762 (17 Nov 2022), while FO v16.00.2746 (09 Sep 2022) works OK.
No mention was made about non-persistent Column Widths. Perhaps user didn't notice or mind.
Related
Discussion: 10e412e233
Discussion: Size and position does not save upon closing app
Somewhat similar-sounding issue (?) -- but about FileOptimizer not remembering/ restoring PDF-related config settings specified by various users.
Solved: Discussion Post [913bc3fa#b336]
Related
Discussion: 14aab51d
Discussion: 36f3e6430a
Discussion: Change default settings for all users
Tickets: #131