Menu

Vista and POPFile

Texas Fett
2006-06-12
2013-04-15
  • Texas Fett

    Texas Fett - 2006-06-12

    I downloaded the public Windows Vista Beta 2 and gave it a try on my 64 bit desktop.  I am willing to give any installer updates a a shot in Vista if Brian has time to attempt them.  We are going to need a lot of changes sooner or later.  I don't care at all about corrupting my Vista installation.  Other than the hour I wasted to install it, I would not miss it if I killed it.  I also no longer think I will be an early adopter when it is finally released.  It was pretty and fun to try but that is it.

    Installing POPFile 0.22.4 went surprisingly well.  Other than warnings about installing a program, it worked as expected.

    PF was installed into:
    C:\Program Files (x86)\POPFile

    User Data was installed into:
    C:\Users\Joseph Connors\AppData\Roaming\POPFile

    The Start Menu shortcuts are stored in:
    C:\Users\Joseph Connors\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\POPFile

    Email Client Configuration recognizes Windows Mail as a mail client, but does not indicate that it can be setup automatically.  When attempting to have it automatically change the settings (on what I don't know since it already said it couldn't do Windows Mail), it complained "WARNING: Outlook Express appears to be running !"  Windows Mail was not configured for POPFile I guess since it is not actually Outlook Express.  But it is close enough to cause the warning that OE was running.  The best part about Windows Mail, it is just like Outlook Express in that it does not scan custom headers.

    Accessing PF in IE7 is slightly annoying at first.  A popup (which I think had a don't show this anymore option) comes up telling us about the information bar which is telling us that "Intranet settings are now turned off by default in Internet Explorer.  Click here for more options..."  Even without the Intranet settings on, POPFile works fine.  I only tested 0.22.4 so I don't know if the Javascript used in 0.23 will work under the default settings.  I presume it will since Javascript works on the internet and that appears to be the level of security settings you are under when Intranet mode is not on.

    When you start POPFile from its start menu icon, a User Account Controls security popup comes up saying "An unidentified program wants access to your computer.  User Account Control stops unauthorized changes to your computer.  The source and purpose of this program are unknown.  Don't run the program unless you have used it before and know where it's from." for runpopfile.exe.  We are shown as being an "unknown publisher."

    And guess what, it does the same when you start the computer and POPFile is started from the Start Menu which will basically makes PF such a pain in the ass no one will use it.  There is no option to always allow this program or this publisher.

    I tried installing Firefox and that causes a similar User Account Controls popup, but it is only a confirmation that you know something is being installed.  Their publisher info is listed correctly.

    I also attempted to run PF from the start menu (runpopfile.exe) while it was already running.  Of course, it failed because the other copy was running, but then I got a "Windows detected that this program did not install correctly."  In this dialog, it lists runpopfile.exe with "The POPFile Project" as the publisher.  The dialog's choices are "Reinstall using recommended settings" and "This program installed correctly."  Neither would be correct as far as a user is concerned.

    The Shutdown POPFile Silently program of course pops up the same User Account Controls as runpopfile.

    I then tried just running popfile.exe from a shortcut.  From that I discovered something important when the icon changed.  With the link pointing to runpopfile.exe, there was a small Windows shield icon overlayed on Otto.  That disappeared when pointing to popfile.exe.  And running this shortcut pops up no warnings.

    This could means the end of using the NSIS installer for staring PF normally and possibly even the utilities.  Maybe there is some way to modify NSIS to make it not appear to Windows as an installer.  But it could be Windows is just detecting NSIS based programs and assuming they are installers.  If we can't work around this it is going to be a major pain for users.

    You can read more about what I didn't like about Vista here:
    http://blog.jciv.com/2006/06/11/vista-beta-2/

     
    • Brian Smith

      Brian Smith - 2006-06-12

      >> I am willing to give any installer updates a a shot in Vista if Brian has time to attempt them ... I don't care at all about corrupting my Vista installation <<

      Thanks for this generous offer, Joseph.

      >> Email Client Configuration recognizes Windows Mail as a mail client, but does not indicate that it can be setup automatically. When attempting to have it automatically change the settings (on what I don't know since it already said it couldn't do Windows Mail) <<

      That sounds like an installer bug. If Windows Mail was the only mail client the installer found then the installer should skip all of the email account stuff (at least that is what I think it is supposed to do). I'll need to look at the code again because I cannot remember what it does.

      >> it complained "WARNING: Outlook Express appears to be running !" <<

      That is interesting: the installer looks for an "Outlook Express Browser Class" window to determine whether or not Outlook Express is running. If this is not an installer bug then perhaps this test should be skipped when Vista is detected. (At the moment the installer simply checks for "Windows 9x" or "better than Windows 9x" whenever it needs to check the Windows version.)

      >> When you start POPFile from its start menu icon, a User Account Controls security popup comes up saying "An unidentified program wants access to your computer. User Account Control stops unauthorized changes to your computer. The source and purpose of this program are unknown. Don't run the program unless you have used it before and know where it's from." for runpopfile.exe. We are shown as being an "unknown publisher." <<

      None of the NSIS-based EXE files are digitally signed, hence the stern warnings from Vista. I think I can make a test installer using EXE files signed with a "dummy" certificate so Vista will then complain that the certificate issuing authority (i.e. me) looks suspicious.

      It has been a while since I last looked at digital signing so I'll need to refresh my memory.

      Eventually whoever builds the official releases will need to use a "proper" certificate to sign the EXE files to avoid nasty warnings.

      >> And guess what, it does the same when you start the computer and POPFile is started from the Start Menu which will basically makes PF such a pain in the ass no one will use it. There is no option to always allow this program or this publisher. <<

      That behaviour might change if the EXE files are digitally signed, even with just a dummy certificate. The current files are not signed so there is no publisher information therefore Vista cannot offer the option to allow this publisher (I guess).

      >> I tried installing Firefox and that causes a similar User Account Controls popup, but it is only a confirmation that you know something is being installed. Their publisher info is listed correctly. <<

      The Firefox installer is digitally signed (with a "proper" certificate) which is why Vista is happier to let you install it and use it.

      >> I also attempted to run PF from the start menu (runpopfile.exe) while it was already running. Of course, it failed because the other copy was running, but then I got a "Windows detected that this program did not install correctly." In this dialog, it lists runpopfile.exe with "The POPFile Project" as the publisher. <<

      "The POPFile Project" appears in the EXE file's Version Information so Vista must have looked there because there is no digital signature.

      >> This could means the end of using the NSIS installer for staring PF normally and possibly even the utilities. Maybe there is some way to modify NSIS to make it not appear to Windows as an installer. But it could be Windows is just detecting NSIS based programs and assuming they are installers. If we can't work around this it is going to be a major pain for users. <<

      I think the biggest problem is the lack of digital signatures on the EXE files. With Vista's extra emphasis on security it is not surprising that it didn't like much of what you installed.

      If I can make an installer with EXE files which have digital signatures then Vista may be a little happier with my little utilities?

      Brian

       
      • Texas Fett

        Texas Fett - 2006-06-12

        >>That is interesting: the installer looks for an "Outlook Express Browser Class" window to determine whether or not Outlook Express is running. If this is not an installer bug then perhaps this test should be skipped when Vista is detected. (At the moment the installer simply checks for "Windows 9x" or "better than Windows 9x" whenever it needs to check the Windows version.)<<

        I may have forgot to mention, Windows Mail was running when I got that message.  Seeing how closely it resembles Outlook Express, I am guessing it still uses whatever you use to identify a running OE.

        I am wondering if the installer attempted to make the registry changes for OE.  What keys are those stored under in XP normally?

        I do think digital signatures will help a lot, but not in all cases.

        If runpopfile.exe still pops up a you are installing something warning whenever it starts (which happens with Firefox's signed installer) it still is unusable to run POPFile at startup.  These aren't the normal popups we have now, they grey out and disable the rest of the screen and force your response before anything else happens.  I need to check if background programs are frozen while it happens.

        The other case is when starting PF fails or a utility fails.  It popups up the installation failed dialog.  That will confuse users.  Possibly a solution to that is to trap failure codes and not report them to the OS.

         
    • Brian Smith

      Brian Smith - 2006-06-12

      >> I may have forgot to mention, Windows Mail was running when I got that message. Seeing how closely it resembles Outlook Express, I am guessing it still uses whatever you use to identify a running OE. <<

      That makes sense.. but why bother changing the program's name if most of the stuff under the hood is unchanged?

      >> I am wondering if the installer attempted to make the registry changes for OE. <<

      The installer creates some text files in the User Data folder when it analyses the email account settings and when it changes any. When processing Outlook Express accounts it creates expconfig.txt (a summary of all the accounts detected) and possibly expchanges.txt (summary of the changes made by the installer). The pfi-outexpress.ini file lists the original registry data (for the accounts the installer modified) which the User Data uninstaller will restore.

      >> What keys are those stored under in XP normally? <<

      You may not like the answer (you need to do some detective work). Here is the relevant comment from the source code:

      <snip>

      More than one "identity" can be created in OE. Each of these identities is given a GUID and these GUIDs are stored in HKEY_CURRENT_USER\Identities.

      Each identity can have several email accounts and the details for these accounts are grouped according to the GUID which "owns" the accounts.

      We step through every identity defined in HKEY_CURRENT_USER\Identities and for each one found check its OE email account data.

      When OE is installed, it (usually) creates an initial identity which stores its email account data in a fixed registry location. If an identity with an "Identity Ordinal" value of 1 is found, we need to look for its OE email account data in

      HKEY_CURRENT_USER\Software\Microsoft\Internet Account Manager\Accounts

      otherwise we look in the GUID's entry in HKEY_CURRENT_USER\Identities, using the path

      HKEY_CURRENT_USER\Identities\{GUID}\Software\Microsoft\Internet Account Manager\Accounts

      All of the OE account data for an identity appears "under" the path defined above, e.g. if an identity has several accounts, the account data is stored like this:

      HKEY_CURRENT_USER\...\Internet Account Manager\Accounts\00000001
      HKEY_CURRENT_USER\...\Internet Account Manager\Accounts\00000002
      etc

      <snip>

      Did that make any sense? If not, I'll try to explain it better (but it might take me a while to refresh my memory since this is one of the most complicated parts of the installer).

      >> I do think digital signatures will help a lot, but not in all cases. <<

      But until I make some signed EXEs we can only guess at what might happen.

      >> The other case is when starting PF fails or a utility fails. It popups up the installation failed dialog. That will confuse users. Possibly a solution to that is to trap failure codes and not report them to the OS. <<

      That might work in some cases but I think there are cases where it is not possible to trap the code (because NSIS handles these cases in such a way that a script cannot override the error code).

      Brian

       
      • Texas Fett

        Texas Fett - 2006-06-12

        >>That makes sense.. but why bother changing the program's name if most of the stuff under the hood is unchanged?<<

        I am not sure how much has gone unchanged, I only ever use OE for troubleshooting other's PF setup problems.  I saw a video about how much improved Windows Mail was and it did look to be an improvement.  One really nice thing that may be useful for POPFile integration is that all emails are stored as eml files on the disk.  No more database corruption problems.  In the video they mentioned something about other programs being able to access the messages on disk.  Possibly PF could deal with WM that way.  It would be sort of like IMAP watched folders I guess.  I have looked though and don't see how that is possible yet.

         
      • Texas Fett

        Texas Fett - 2006-06-12

        I did find some of the stuff mentioned in the places they were supposed to be, but not any OE looking settings.  It does seem that Windows Mail has its own registry values.

        There was no pfi-outexpress.ini file.  So it must be a bug that the installer checks for OE running even if it is not going to be modifying its settings.  Not that it matters in most any case though.

        Here is a zip of the info I thought might be useful though probably not.  It is based on the registry locations you pointed out, what I found for Windows Mail, and the installer logs.  I do not see anything in there about my Windows Mail pop3 settings though.

        http://popfile.jciv.com/pfivista.zip

        No rush on figuring this stuff out.  It isn't going to be out till January at best.

        I just realized that by abriviating Windows Mail as WM, it may confuse people since we already have WM.

         
        • Brian Smith

          Brian Smith - 2006-06-12

          >> There was no pfi-outexpress.ini file. So it must be a bug that the installer checks for OE running even if it is not going to be modifying its settings. Not that it matters in most any case though. <<

          I wouldn't be surprised to find that the installer just assumes OE is present.

          Thanks for the zip file (I have not looked at it yet).

          >> I do not see anything in there about my Windows Mail pop3 settings though <<

          It might not use the registry. Newer versions of Outlook don't use the registry, they use proprietary PST files which is why the installer can only configure some types of Outlook account.

          >> No rush on figuring this stuff out. It isn't going to be out till January at best. <<

          No harm in looking at digital signing now though (Win98SE can display the certificate details even though it does not check programs are signed).

          I can add a digital signature to an EXE but I still need to work out which fields to use to make it clear that this EXE is only for test purposes. There's a lot of stuff for me to read about this on MSDN.

          Brian

           
        • James E Lang

          James E Lang - 2006-06-20

          "No rush on figuring this stuff out. It isn't going to be out till January at best."

          Are you sure that "the 12th of never" isn't better?

          --
          Jim

           
        • Brian Smith

          Brian Smith - 2006-06-20

          >> I wouldn't be surprised to find that the installer just assumes OE is present <<

          It's a bug - the installer assumes OE is present so it always looks for OE accounts. I'll make a repackaged installer which will skip all of the email account pages if it does not find any suitable email clients.

          >> Here is a zip of the info I thought might be useful though probably not. It is based on the registry locations you pointed out, what I found for Windows Mail, and the installer logs. I do not see anything in there about my Windows Mail pop3 settings though. <<

          After looking at your zip file, I see what you mean. When I was working on the current the email reconfiguration code, I found some useful web sites explaining how OE handles identities then spent a long time using my registry editor to test/debug what the installer was doing. Even if I find a similar source of information on Vista, I have no plans to "upgrade" to Vista so it won't be easy for me to upgrade the installer to reconfigure Windows Mail accounts.

          After using Eudora for about 6 years I have just upgraded to Thunderbird. I had some problems importing everything from Eudora (it took several days to get it all converted properly) and I am still tweaking Thunderbird to get it doing what I want. I've started thinking about how to upgrade the installer to make it reconfigure Thunderbird accounts (it has been a very long time since that part of the installer was last changed.)

          Brian

           
          • Texas Fett

            Texas Fett - 2006-06-20

            You don't plan on upgrading to Vista (once it is official) because it sucks so bad or becuase your machine can't handle it?  You can always dual boot if your machine will run it.  I will stick with XP for a good while after Vista is released, other than upgrading to Windows 95, I always have waited as long as I could.

             
            • Brian Smith

              Brian Smith - 2006-06-22

              >> You don't plan on upgrading to Vista (once it is official) because it sucks so bad or becuase your machine can't handle it? <<

              Yes, to both questions. Based upon what I've read so far, the only reason I'd upgrade is because I want/need to run some software that does not run on Win98SE, such as EclipseNSIS.

              I still use a lot of legacy software which might no longer work on Vista - upgrading all of that software is a price I am not prepared to pay.

              Since Microsoft's "System Requirements" are useless there is no point in upgrading my machine until a clearer picture emerges of Vista's real requirements. Upgrading to SuSE 10.1 is a far more attractive proposition at the moment.

              Brian

               
          • ken

            ken - 2007-04-24

            Has something been deleted from this thread ?
            I put this thread in my favorites to FIX the UAC with Vista.
            the option that worked [up till now], though it is still working but I no longer have a tray icon. The fix was to use task manager, and boot it that way.

            And it worked with the tray icon and all. Obviously either Vista or me toggled something and turned off the popfile tray icon. I no longer have access to the interface.

            In the hide inactive icons setting, I've put popfile and perl tray to SHOW all the time.

            How do I get the popfile tray icon to reappear ?
            It runs, just no longer shows the icon.

             
            • Texas Fett

              Texas Fett - 2007-04-24

              I don't think anything has been deleted, possibly the info you are looking for was in another Vista thread.  Here is one:
              https://sourceforge.net/forum/forum.php?thread_id=1528934&forum_id=213099

              In it I posted a solution to the UAC so you can start POPFile normally.  And Brian then integrated that and provided a new set of EXEs.

               
    • Alec Burgess

      Alec Burgess - 2006-10-01

      Brian, Joseph: Is this useful in determining potential problems with Vista and target app:
      >><From: Microsoft Download Notifications: September 29, 2006:
      > Microsoft Standard User Analyzer
      > <http://go.microsoft.com/?linkid=5559919> This application
      > compatibility tool helps developers and IT professionals diagnose
      > issues that would prevent a program from running properly as a
      > standard user without administrator privileges.
      <

      It appears to work by firing off an application - user (with ADMIN
      privileges) can interact with it and a log gets generated. Clicking
      through the various tabs shows what problems will be encountered by a
      "regular user" trying to run w/o ADMIN privileges.

      It doesn't explicitly say that it is to be used to determine potential Vista problems but that seems to be the kind of info it presents.

      caution: quite a few dependencies ...

      * before d/l'ing requires installing the "Have I got legal
      software?" thingy then
      * Standard User Analyzer requires
      o dotNet Framework 2.0 (I had dotNET Framework 1.something)
      before it will install
      o and to do anything useful :
      + Microsoft Application Verifier.

      Regards ... Alec

       

Log in to post a comment.