The manifest file was introduced around Windows 7 timeframe, as I recall, as part of Microsoft’s slow revamp of many of their unmanaged code practices (DLLs, etc) to gain benefit from some of the things they’d learned from managed code. It’s been a while since I did any unmanaged Windows development, but I believe that as long as the manifest is somewhere on the dynamic library load path (which would correspond to the PATH plus a few additional places), it’s visible to the native loader and therefore usable.
Basically, these are XML files that allow for some amount of metadata and redirection to be supported for native code. More details are available here: https://msdn.microsoft.com/en-us/library/windows/desktop/aa375365(v=vs.85).aspx . I suspect they are produced as a natural part of the build when using Visual Studio to compile native code, but I’m speculating here. Ted Neward Author, Speaker, Mentor http://www.newardassociates.com t: @tedneward | m: (425) 647-4526 On 11/17/17, 6:15 PM, "build-dev on behalf of Erik Joelsson" <build-dev-boun...@openjdk.java.net on behalf of erik.joels...@oracle.com> wrote: I don't know what the manifest file is for, but if it's in the wrong place I would blame jlink for messing it up. /Erik On 2017-11-17 00:54, Baesken, Matthias wrote: > Hello, I noticed that in OpenJDK 9 and 10, on 64bit Windows the sawindbg.dll.manifest > shows up in another folder than the related dll : > > ./images/jdk/lib/sawindbg.dll.manifest > ./images/jdk/bin/sawindbg.dll > > Does anybody know why it is done this way ? I thought that usually the manifest would be placed next to the dll ? > (in Open JDK8 there is no sawindbg.dll.manifest manifest file at all) > > Thanks, Matthias