ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
April 17th, 2024 | 14:30-16:00 SGT (UTC+8) | Online

Wireshark-dev: Re: [Wireshark-dev] Building 64 vs. 32-bit question

Date: Thu, 10 May 2012 12:09:02 -0400
You're quite right, all I need is SetEnv.Cmd with the appropriate target as the arg.  Thanks!

I did run into one more issue, when I rebuilt everything for x64:  When I tried to start wireshark.exe I got an Application Error dialog, saying "The application was unable to start correctly (0xc000007b)."  Dependency Walker showed me I was using the 32-bit version of COMCTL32.DLL . But why??

After spending all morning learning much more about VC++ and application manifests than I *ever* wanted to know, here's the fix I found.  Edit image/wireshark.exe.manifest.in, and change the attribute of <assemblyIdentity> from

   processorArchitecture="x86"
to 
   processorArchitecture="*"

It now seems to get the correct version of the DLL for both x86 and x64 targets.

I'm not sure why this was necessary for me, since a quick scan of the wireshark-dev archives (as well as google in general) did not show anyone else having this trouble.  So it may be something unique about my environment, not sure.  But in any case, based on my brief education on the topic, the "*" should cover everything.