[R-pkg-devel] Unable to load Windows NETIO.SYS and WINSPOOL.DRV DLLs

David Sterratt D@v|d@C@Sterr@tt @end|ng |rom ed@@c@uk
Sun Feb 12 17:37:41 CET 2023


On Sat, 2023-02-11 at 18:11 +0300, Ivan Krylov wrote:
> On Sat, 11 Feb 2023 11:19:42 +0000
> David Sterratt <David.C.Sterratt using ed.ac.uk> wrote:
>
> > WinDbg output reveals errors loading "NETIO.SYS" and "WINSPOOL.DRV"
> > when running "library(RGtk2)":
> >
> >    0c64:0640 @ 44312812 - LdrpProcessWork - ERROR: Unable to load
> > DLL:
> > "NETIO.SYS", Parent Module: "C:\Users\David
> > Sterratt\AppData\Local\R\win-library\4.3\RGtk2\libs\x64\RGtk2.dll",
> > Status: 0xc0000135
> >    ...
> >    0c64:1e5c @ 44312812 - LdrpProcessWork - ERROR: Unable to load
> > DLL:
> > "WINSPOOL.DRV", Parent Module: "C:\Users\David
> > Sterratt\AppData\Local\R\win-library\4.3\RGtk2\libs\x64\RGtk2.dll",
> > Status: 0xc0000135
>
> The failure to load WINSPOOL.DRV is perplexing (it should normally be
> possible to load as it's a system DLL that applications are supposed
> to
> link against in order to be able to print), but NETIO.SYS should
> probably be absent from the import list. At least it seems to be
> linked
> against some kernel-related stuff that shouldn't be reachable from
> userspace applications.
>
> By removing -lnetio from PKG_LIBS, I was able to load the package and
> run some example code from the JSS article, but then Rgui.exe crashed
> on exit. I'm running R-4.2.2 and Rtools43 on a Windows 7 machine,
> which
> could also be a source of the difference.

Thank you for looking at this. I tried removing -lnetio, but package
didn't install at all on Windows 10.

> Does the Dependency Walker <https://dependencywalker.com/> provide
> you
> any useful information about the package DLL besides what you already
> know? (Some warnings deep in the dependency tree are to be expected.
> R.DLL is not on the PATH so won't be automatically found, but other
> dependencies should exist.)

I looked at the Dependency Walker, but it was giving me many messages
about missing DLLs with names like:

  API-MS-WIN-CORE-STRING-L2-1-0.DLL  Error opening file. The system
cannot find the file specified (2).

These libraries seem to be part of the UCRT system. However, when
looked at the DLL of a package that *did* load in Dependency Walker, I
got the same messages, so I think the path to the UCRT files may be
missing.

Dependency Walker did seem to find:

  c:\windows\system32\WINSPOOL.DRV

For NETIO.SYS it gave the " Error opening file. The system cannot find
the file specified (2)." There was also this table in the output.

     [ ? ] NETIO.SYS

          Import  Ordinal  Hint          Function                Entry
Point
          ------  -------  ------------  ----------------------  ------
-----
          [CE ]       N/A    4 (0x0004)  CancelMibChangeNotify2  Not
Bound
          [CE ]       N/A   79 (0x004F)  GetIpForwardTable2      Not
Bound
          [CE ]       N/A  364 (0x016C)  NotifyRouteChange2      Not
Bound
          [CE ]       N/A  529 (0x0211)  if_nametoindex          Not
Bound

If you're really interested, I can send you the output, but from what
Uwe says, I'm wondering if this is a lost cause!

Best wishes,

David.


--
David Sterratt, Lecturer https://www.ed.ac.uk/profile/sterratt
Institute for Adaptive and Neural Computation     tel: +44 131 651 1739
School of Informatics, University of Edinburgh
Appleton Tower, 11 Crichton Street, Edinburgh EH8 9LE, Scotland
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
BOOK: Principles of Computational Modelling in Neuroscience
Sterratt, Graham, Gillies & Willshaw (CUP, 2011).
http://www.compneuroprinciples.org



The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. Is e buidheann carthannais a th’ ann an Oilthigh Dhùn Èideann, clàraichte an Alba, àireamh clàraidh SC005336.


More information about the R-package-devel mailing list