I use Resource Hacker (<a href="http://www.angusj.com/resourcehacker/">http://www.angusj.com/resourcehacker/</a>), it allows you to view and edit all embedded resources of EXE/DLL files. It's a very handy application. Dependency Walker is really nice too.<div>
<br></div><div>Regarding the issue, wouldn't it just be better to compile the pyd without any embedded manifest file, instead of trying to parse and remove certain sections? I'm not familiar with how distutils works, but for my own Visual Studio projects I pass the /MANIFEST:NO option to the linker and it will not generate an embedded manifest file.<br>
<br><div class="gmail_quote">On Fri, Oct 2, 2009 at 8:36 AM, Christoph Gohlke <span dir="ltr"><<a href="mailto:cgohlke@uci.edu">cgohlke@uci.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi,<br>
<br>
you can use Dependency Walker <<a href="http://www.dependencywalker.com/" target="_blank">http://www.dependencywalker.com/</a>>. If the patch is working, pyd files will depend on MSVCR90.DLL, otherwise %WINDIR%\winsxs\...\MSVCR90.DLL<br>
<br>
There are two issues with Koen's patch (both easy to fix). It does not work for 64-bit Python and it also processes exe files build with setuptools.<br><font color="#888888">
<br>
Christoph</font><div><div></div><div class="h5"><br>
<br>
On 11:59, Fredrik Lundh wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Ok, I can apply Koen's patch locally and rebuild, if that makes sense.<br>
<br>
What's the quickest way to look for embedded manifests in the PYD:s?<br>
dumpbin doesn't seem to say anything about that, so I assume I have to<br>
use some other tool.<br>
<br>
</F><br>
<br>
On Fri, Oct 2, 2009 at 12:10 AM, Farshid Lashkari<<a href="mailto:flashk@gmail.com" target="_blank">flashk@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I just tried the new installer<br>
(<a href="http://effbot.org/media/downloads/PIL-1.1.6.win32-py2.6.exe" target="_blank">http://effbot.org/media/downloads/PIL-1.1.6.win32-py2.6.exe</a>), but the pyd<br>
files still contain embedded manifests. The installer says it was built Oct<br>
1, 2009 with Python 2.6.2, so that should be the latest version.<br>
I took a closer look at the changes made from that bug report. The change<br>
was only made to the PCbuild/pyd.vsprops file, which I don't believe will<br>
affect 3rd party extensions. I see that Koen submitted a patch<br>
for msvc9compiler.py that will strip the runtime from the manifest, but that<br>
doesn't appear to have been committed. So I'm not really sure how 3rd party<br>
extension developers can build pyd files without embedded manifests.<br>
On Thu, Oct 1, 2009 at 4:10 AM, Fredrik Lundh<<a href="mailto:fredrik@pythonware.com" target="_blank">fredrik@pythonware.com</a>><br>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I've replaced the 1.1.6 binary at <a href="http://effbot.org/downloads" target="_blank">effbot.org/downloads</a> with one built<br>
under 2.6.2. The installer is 130k larger thanks to a 3x larger<br>
wininst executable (!?), but the binary extensions are slightly<br>
smaller than before, so I'll assume it's the manifests that have<br>
disappeared.<br>
<br>
</F><br>
<br>
On Mon, Sep 28, 2009 at 4:07 PM, Fredrik Lundh<<a href="mailto:fredrik@pythonware.com" target="_blank">fredrik@pythonware.com</a>><br>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Ah, sneaky. I'm pretty sure the current binary distribution was built<br>
when 2.6 was new, and I didn't really expect them to tweak<br>
build-related issues in an incremental release :)<br>
<br>
I'll push out a new build asap; will ping the list when it's available.<br>
<br>
Thanks!<br>
<br>
</F><br>
<br>
On Mon, Sep 28, 2009 at 3:46 PM, Koen van de Sande<br>
<<a href="mailto:koenvandesande@gmail.com" target="_blank">koenvandesande@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The fix was applied to the main Python distribution (2.6.2 has it for<br>
sure,<br>
2.6.0/2.6.1 does not). Any extension built with 2.6.2 or higher should<br>
be<br>
fine, as it will not get an embedded manifest.<br>
So just rebuild with Python Windows version 2.6.2. I see in the PIL<br>
source<br>
tree that it uses a setup.py build_ext call, so no changes to PIL<br>
should be<br>
needed.<br>
<br>
Koen<br>
_______________________________________________<br>
Image-SIG maillist - <a href="mailto:Image-SIG@python.org" target="_blank">Image-SIG@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/image-sig" target="_blank">http://mail.python.org/mailman/listinfo/image-sig</a><br>
<br>
</blockquote>
<br>
</blockquote>
_______________________________________________<br>
Image-SIG maillist - <a href="mailto:Image-SIG@python.org" target="_blank">Image-SIG@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/image-sig" target="_blank">http://mail.python.org/mailman/listinfo/image-sig</a><br>
</blockquote>
<br>
<br>
</blockquote>
<br>
</blockquote>
_______________________________________________<br>
Image-SIG maillist - <a href="mailto:Image-SIG@python.org" target="_blank">Image-SIG@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/image-sig" target="_blank">http://mail.python.org/mailman/listinfo/image-sig</a><br>
</div></div></blockquote></div><br></div>