Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

shelllibrary not found?

28 views
Skip to first unread message

john c

unread,
Jul 30, 2023, 10:44:00 AM7/30/23
to
hi all,

can't figure out why i'm getting file not found. running under win 11 and dolphin v7.0.57.2. i included 1) path 2) file not found 3) dump

thanks,

john

PATH=C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Users\jndbu\AppData\Local\Microsoft\WindowsApps;C:\Users\jndbu\.dotnet\tools;C:\windows\System32\Shell32.DLL;

a ShellLibrary(16r75DD0000 - 'C:\windows\System32\Shell32.DLL')

10:33:31 AM, Sunday, July 30, 2023: 'The system cannot find the file specified. (16r2: The system cannot find the file specified. )'
ShellLibrary(ExternalLibrary)>>systemError
ShellLibrary>>shellOpen:directory:parameters:
ShellLibrary>>shellOpen:directory:
ShellLibrary>>shellOpen:
JCReportManager>>openCurrentReport
JCReportManager>>print
JCFoodInventoryShell>>printReport:
JCFoodInventoryShell>>printReport
JCIngredientPrintDialog>>print
Symbol>>forwardTo:
CommandDescription>>performAgainst:
[] in Command>>value
BlockClosure>>ifCurtailed:
BlockClosure>>ensure:
Command>>value
DialogView>>performCommand:
JCIngredientPrintDialog(Shell)>>performCommand:
CommandQuery>>perform
DelegatingCommandPolicy(CommandPolicy)>>route:
[] in PushButton(View)>>onCommand:
BlockClosure>>ifCurtailed:
BlockClosure>>ensure:
Cursor>>showWhile:
PushButton(View)>>onCommand:
PushButton(CommandButton)>>onActionPerformed
PushButton(View)>>performAction
PushButton>>command:id:
ContainerView(View)>>wmCommand:wParam:lParam:
ContainerView(View)>>dispatchMessage:wParam:lParam:
[] in InputState>>wndProc:message:wParam:lParam:cookie:
BlockClosure>>ifCurtailed:
InputState>>wndProc:message:wParam:lParam:cookie:
PushButton(ControlView)>>defaultWindowProcessing:wParam:lParam:
MouseEvent(WindowsEvent)>>defaultWindowProcessing
PushButton(View)>>onLeftButtonReleased:
PushButton(View)>>wmLButtonUp:wParam:lParam:
PushButton(View)>>dispatchMessage:wParam:lParam:
[] in InputState>>wndProc:message:wParam:lParam:cookie:
BlockClosure>>ifCurtailed:
InputState>>wndProc:message:wParam:lParam:cookie:
DialogView(View)>>isDialogMessage:
DialogView(ShellView)>>preTranslateMouseInput:
DialogView(View)>>preTranslateMessage:
InputState>>preTranslateMessage:
InputState>>pumpMessage:
InputState>>loopWhile:
InputState>>mainLoop
[] in InputState>>forkMain
ExceptionHandler(ExceptionHandlerAbstract)>>markAndTry
[] in ExceptionHandler(ExceptionHandlerAbstract)>>try:

john c

unread,
Jul 30, 2023, 11:08:29 AM7/30/23
to
i will add i tried doing a ShellLibrary default earlier in the processing to make sure the singleton was loaded but got the same result.

danie...@gmail.com

unread,
Jul 31, 2023, 10:56:59 PM7/31/23
to
Looking at the stack, the file that can't be found isn't shell32.dll—that's right where it should be, and indeed probably the VM would not start without it—but rather whatever JCReportManager>>currentReport passed to #shellOpen:. Looks like you maybe saved a temp file, or are managing a directory of files, and want to open it/one of them in the default program so the user can print it? Make sure you're either passing an absolute path, or know what `File workingDirectory` is (and note that open/save dialogs will change it on you) and provide a correct path relative to that. Just sticking with absolute paths is probably best. Have a look at FileLocator for relative-to-absolute translation with an arbitrary starting point. I think there are some class methods on File that can handle simpler cases or be combined to do custom stuff.

If you're still stumped, break out the `ShellLibrary default shellOpen:` call on its own line and put a breakpoint (`self halt`) before it, then you can examine the argument live in the debugger and keep re-executing the shellOpen: call (just as a DoIt) until you figure out what's confusing it.
0 new messages