Pegasus Mail & Mercury

Welcome to the Community for Pegasus Mail and
The Mercury Mail Transport System, the Internet's longest-serving PC e-mail system!
Welcome to Pegasus Mail & Mercury Sign in | Join | Help
in
Home Blogs Forums Downloads Pegasus Mail Overview Mercury Overview Wiki

IERenderer v2.6.2.2 and VIEWER.PM

Last post 09-15-2019, 20:57 by idw. 6 replies.
Sort Posts: Previous Next
  •  08-30-2019, 18:26

    • Brian Fluet is not online. Last active: 09-22-2019, 5:25 Brian Fluet
    • Top 10 Contributor
    • Joined on 12-24-2014
    • North Carolina, USA
    • SuperStar
    • Points 26,270

    IERenderer v2.6.2.2 and VIEWER.PM

    I just had a EUREKA moment regarding VIEWER.PM as affected by IERender 2.6.2.2.

    Here's what came into focus:

    1. The VIEWER.PM file that is in each mailbox directory default entries plus any added via Tools/Options/Content Viewers.

    2. The VIEWER.PM file that is in \PROGRAMS contains a global list of content viewers which appears to get appended to the personal list.  This is visible when looking at the list in Tools/Options/Content Viewers.  The personal list entries are displayed in black, the global ones are in blue.

    3. IERenderer 2.6.2.2 is updating the global VIEWER.PM (from registry is the current guess) in order to make as many viewers as possible available to Pegasus Mail.  The personal viewer entries are left untouched.


    Unfortunately, this process breaks any entries added to the global viewer list in multi-user installations.

    --
    Brian Fluet
  •  09-08-2019, 20:43

    • idw is online. Last active: Sun, Sep 22 2019, 18:53 idw
    • Top 10 Contributor
    • Joined on 03-25-2007
    • Germany
    • SuperStar
    • Points 47,175
    • BetaTeam

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    Brian Fluet:
    3. IERenderer 2.6.2.2 is updating the global VIEWER.PM (from registry is the current guess) in order to make as many viewers as possible available to Pegasus Mail.  The personal viewer entries are left untouched.


    Unfortunately, this process breaks any entries added to the global viewer list in multi-user installations.

    OK, now that I'm almost back from vacation: Most of your assumptions are correct. The only goal of adding all these media entries is forcing Pegasus Mail into passing on inline media files (such as images) to its HTML renderers with their proper file extensions (which it doesn't do in lots of cases by default, hence the image display issues in IER's recent version for many users which I still don't fully understand). It does not change or remove any existing entries, but I don't know what priorities Pegasus Mail assigns to the order of the entries. It does not assign any special viewers to the entries other than the Windows default for the respective filename extension (the viewer is not relevant for IER, only the file extension).


    Michael

    --
    PGP Key ID (RSA 2048): 0xC45D831B
    PGP Plugin for Pegasus Mail: <http://www.pmpgp.de/pmpgp/>
    S/MIME Certificate Fingerprint: 26 5c a3 60 02 c6 e3 8a 75 70 d5 6a 67 ff d3 8d b0 b5 5e 5b
  •  09-09-2019, 1:18

    • Brian Fluet is not online. Last active: 09-22-2019, 5:25 Brian Fluet
    • Top 10 Contributor
    • Joined on 12-24-2014
    • North Carolina, USA
    • SuperStar
    • Points 26,270

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    What does IER use to determine which VIEWER.PM file to update when multiple instances of Pegasus Mail are running?

    Also, in multi-user network installations of Pegasus Mail I believe it is common practice the protect the \Programs directory.  Does IER gracefully tolerate a write protected VIEWER.PM file?

  •  09-09-2019, 10:16

    • idw is online. Last active: Sun, Sep 22 2019, 18:53 idw
    • Top 10 Contributor
    • Joined on 03-25-2007
    • Germany
    • SuperStar
    • Points 47,175
    • BetaTeam

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    Brian Fluet:
    What does IER use to determine which VIEWER.PM file to update when multiple instances of Pegasus Mail are running?

    It updates the file in the directory where Pegasus Mail's executable is launched from so all users working with this installation of Pegasus Mail are affected.

    Brian Fluet:
    Also, in multi-user network installations of Pegasus Mail I believe it is common practice the protect the \Programs directory.  Does IER gracefully tolerate a write protected VIEWER.PM file?

    It works on the same access level as the running instance of Pegasus Mail and cannot overwrite read-only files. Well, I just realized that it even fails with a fatal exception at least in the latter case, i.e. I'll have to fix this ASAP.

    Any other suggestions? Maybe I should compare existing entries for already existing file types and only add additional ones if they have already extensions asigned?


    Michael

    --
    PGP Key ID (RSA 2048): 0xC45D831B
    PGP Plugin for Pegasus Mail: <http://www.pmpgp.de/pmpgp/>
    S/MIME Certificate Fingerprint: 26 5c a3 60 02 c6 e3 8a 75 70 d5 6a 67 ff d3 8d b0 b5 5e 5b
  •  09-09-2019, 13:56

    • Brian Fluet is not online. Last active: 09-22-2019, 5:25 Brian Fluet
    • Top 10 Contributor
    • Joined on 12-24-2014
    • North Carolina, USA
    • SuperStar
    • Points 26,270

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    idw:

    Brian Fluet:
    What does IER use to determine which VIEWER.PM file to update when multiple instances of Pegasus Mail are running?

    It updates the file in the directory where Pegasus Mail's executable is launched from so all users working with this installation of Pegasus Mail are affected.

    Ok.  That's the last started instance which may not be the instance being IER upgraded.  This is unlikely to be an issue but is good to know.  Consider adding to documentation.

    idw:
    Brian Fluet:
    Also, in multi-user network installations of Pegasus Mail I believe it is common practice the protect the \Programs directory.  Does IER gracefully tolerate a write protected VIEWER.PM file?

    It works on the same access level as the running instance of Pegasus Mail and cannot overwrite read-only files. Well, I just realized that it even fails with a fatal exception at least in the latter case, i.e. I'll have to fix this ASAP.

    Thanks for identifying and prioritizing a fix.

    idw:
    Any other suggestions? Maybe I should compare existing entries for already existing file types and only add additional ones if they have already extensions asigned?

    The question was asked about precedence and since that is unknown, avoiding duplicates is a good idea.

    As for updating the VIEWER.PM of a protected network install, in my case, Pegasus Mail is not "installed" on the server so could never be run in a way that would allow IER to update VIEWER.PM.  What are your thoughts on updating it manually?  Copy from a different install on another machine?  Perhaps on write protect failure prompt for an alternate destination?  

     

  •  09-09-2019, 17:42

    • idw is online. Last active: Sun, Sep 22 2019, 18:53 idw
    • Top 10 Contributor
    • Joined on 03-25-2007
    • Germany
    • SuperStar
    • Points 47,175
    • BetaTeam

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    Brian Fluet:
    What does IER use to determine which VIEWER.PM file to update when multiple instances of Pegasus Mail are running?

    idw:
    It updates the file in the directory where Pegasus Mail's executable is launched from so all users working with this installation of Pegasus Mail are affected.

    Ok.  That's the last started instance which may not be the instance being IER upgraded.  This is unlikely to be an issue but is good to know.  Consider adding to documentation.

    Well, this doesn't really matter since IER will try to update viewer.pm each time Pegasus Mail is launched until some "signature" extensions (not provided by the Windows Registry, for the curious ones) will have been added.

    Brian Fluet:
    The question was asked about precedence and since that is unknown, avoiding duplicates is a good idea.

    I'll check this out with regard to possible side effects and especially ask David Harris about PMs precedences.

    Brian Fluet:
    As for updating the VIEWER.PM of a protected network install, in my case, Pegasus Mail is not "installed" on the server so could never be run in a way that would allow IER to update VIEWER.PM.  What are your thoughts on updating it manually?  Copy from a different install on another machine?  Perhaps on write protect failure prompt for an alternate destination?

    Doing this manually would be an option, but I think I could simply fall back to modifying viewer.pm files in the respective user's new mail directory in such cases especially if using the above discussed "avoid duplicates" approach.


    Michael

    --
    PGP Key ID (RSA 2048): 0xC45D831B
    PGP Plugin for Pegasus Mail: <http://www.pmpgp.de/pmpgp/>
    S/MIME Certificate Fingerprint: 26 5c a3 60 02 c6 e3 8a 75 70 d5 6a 67 ff d3 8d b0 b5 5e 5b
  •  09-15-2019, 20:57

    • idw is online. Last active: Sun, Sep 22 2019, 18:53 idw
    • Top 10 Contributor
    • Joined on 03-25-2007
    • Germany
    • SuperStar
    • Points 47,175
    • BetaTeam

    Re: IERenderer v2.6.2.2 and VIEWER.PM

    I've just uploaded another update dealing with some more issues related to the browser submenu and viewer.pm, please read the version history for details on <http://community.pmail.com/files/folders/community_add-ons_for_pegasus_mail/entry24145.aspx>.

    Well, thought I might as well just copy it in here: 

    15.09.2019, 20:30 (MST): Version 2.6.2.4

    • This version fixes another issue related to the browser selection submenu of the message display pane's context menu where the webbrowser was invoked twice if the submenu was disabled either on purpose or for (so far) unknown reasons.
    • The addition of data to Pegasus Mail's viewer.pm file has been significantly modified:
      • There shouldn't occur any error messages resp. potentially fatal exceptions anymore if the main viewer.pm in Pegasus Mail's "..\Programs\.." directory cannot be accessed for whatever reasons.
      • If this file cannot be accessed IER will instead add the required entries to the viewer.pm directory of the current Pegasus Mail user's new mail directory.
      • In case any of the accessed viewer.pm files contains entries already defining how to deal with the respective file type (i.e. whether and how to execute its contents) IER will check whether these entries also define the proper filename extension for media files (especially images) to be displayed by browsers (including the IER rendering machine) and only add such an extension in its proper place if missing. Previously added duplicates will be removed.
    • Since both depending on HTTP headers (for remote images) or MIME headers (for inline images) won't cover all cases of missing proper file extensions I've implemented another check using the FreeImage library already used by Pegasus Mail for image processing. It provides a fast routine for reading the respective file's header signature for determinig it's file type. I really hope this will now cover most if not all cases of image file detection unless they've been subject to forgery.

    Michael

    --
    PGP Key ID (RSA 2048): 0xC45D831B
    PGP Plugin for Pegasus Mail: <http://www.pmpgp.de/pmpgp/>
    S/MIME Certificate Fingerprint: 26 5c a3 60 02 c6 e3 8a 75 70 d5 6a 67 ff d3 8d b0 b5 5e 5b
View as RSS news feed in XML

Contact | Advertise | Host provider: PraktIT | Terms of Use | Privacy Statement
Copyright © 2007-2011 David Harris / Peter Strömblad. | Pegasus Mail Home Page