<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi Vincent,<br>
    <br>
        thank you for your help so far and sorry for disturbing you with
    my patches again so soon. <br>
        While looking a bit further into my app under Wine I found out
    that some mixed assemblies are completely broken under Wine/Mono due
    to the fact that native entry point is not called at all. It relates
    to both 32 bit and 64 bit. 32 bit works fine under native MS .Net
    which apparently does call the entry point. The entry point address
    is present in IMAGE_COR20_HEADER (when appropriate flag is set in
    Flags member). It is DllMain-type entry point having the same
    parameters. This entry point does static initialization, e. g. calls
    all the constructors for static classes.<br>
        I am attaching preliminary patch to illustrate what I am talking
    about. It would be great if you could give some high level feedback
    on whether you like the idea of doing this in general before I will
    be spamming it to wine-patches.<br>
        <br>
        The potential issue which I can imagine with it is that if there
    are some old apps (built with VS 2003) which called CLR code in
    native init but by chance worked if native init was not called at
    all, may stop working. MSDN says that such apps could
    non-deterministically deadlock when loaded; with Wine/Mono they will
    lock deterministically I think (
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <a class="moz-txt-link-freetext" href="https://msdn.microsoft.com/en-us/library/ms173266.aspx">https://msdn.microsoft.com/en-us/library/ms173266.aspx</a>). Still I
    suppose the issue with entry point should be addressed somehow since
    it affects "normal" newer applications.<br>
    <br>
    Regards,<br>
        Paul.<br>
    <br>
  </body>
</html>