sxs: Implement a stub CreateAssemblyCache to make Publish or Perish install.

Andrew Nguyen arethusa26 at gmail.com
Sun Apr 19 19:39:05 CDT 2009


On Sun, Apr 19, 2009 at 5:04 PM, Kai Blin <kai.blin at gmail.com> wrote:
> On Sunday 19 April 2009 23:55:14 Kai Blin wrote:
>> As mentioned by the authors of Publish or Perish in their FAQ
>> (http://www.harzing.com/pop_faq.htm#Q309), Wine exporting sxs.dll and not
>> providing a real CreateAssemblyCache function trips up the installer.
>> This patch allows Publish or Perish to install without issues.
>>
>> Thanks to Donnie Berkholz for pointing me at this issue.
>> ---
>>  dlls/sxs/sxs.c    |   10 ++++++++++
>>  dlls/sxs/sxs.spec |    2 +-
>>  2 files changed, 11 insertions(+), 1 deletions(-)
>
> Of course the moment I sent this, I found the real implementation in
> fusion.dll. Sending a forward, feel free to ignore this patch.
>

I suspect this is the incorrect approach. Anastasius Focht writes in
bug 15877 (http://bugs.winehq.org/show_bug.cgi?id=15877#c3):

"SxS (aka win32 fusion) is different from fusion for CLR assemblies.
Although both Sxs and CLR have the concept of GAC (for Sxs it's
WinSxs) there are various technological differences."

Thus it may not be entirely reasonable to forward the sxs.dll
functions to fusion.dll. I provisionally attempted the same for the
LiteStep 0.3 installer in bug 17631 and found that while forwarding
sidesteps the unimplemented stub crash, it didn't allow the LiteStep
installer to properly detect the Visual C++ 2005 runtime.



More information about the wine-devel mailing list