3 Replies Latest reply on Jan 28, 2013 9:57 AM by jsimon16

    Custom update - Draftsight

    dougr

      Hello all,

       

      I'm trying to create a custom patch to upgrade all of our draftsight installations (a free CAD program).  I've given up on actually figuring out applicability, and have just set it to Win XP or greater (same as prerequisite rule), thus making the update applicable to all our computers. The following "installed" logic works in detecting the manual installations already on our network:

      -<sdp:InstalledRule SchemaVersion="1.0">
      -<lar:Or>
      <bar:RegKeyExists Key="HKEY_LOCAL_MACHINE"Subkey="SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{8EBF1B19-7756-42E5-A663-93ACB1D1FEA8}"RegType32="false"/>
      <bar:RegKeyExists
      Key="HKEY_LOCAL_MACHINE"Subkey="SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{8EBF1B19-7756-42E5-A663-93ACB1D1FEA8}"RegType32="true"/>
      <bar:RegKeyExists
      Key="HKEY_LOCAL_MACHINE"Subkey="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{8EBF1B19-7756-42E5-A663-93ACB1D1FEA8}"RegType32="false"/>
      <bar:RegKeyExists
      Key="HKEY_LOCAL_MACHINE"Subkey="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{8EBF1B19-7756-42E5-A663-93ACB1D1FEA8}"RegType32="true"/>
      </lar:Or>
      </sdp:InstalledRule>

      Other 3rd party updates work fine, this not a provisioning problem. I target the computers manually from an inventory report and just set an install time using update management rather than approving it, because I can't figure out applicability logic that works, and I don't want to approve it for all
      computers. This worked for the last version of Draftsight (V1R2 - V9.0.189).

      With the current version (V1R2.1 - V9.1.173), it worked on 3 out 158 computers (2 xp, 1 Win7, upgrading from 3 different draftsight versions). So there's really nothing in common with them to narrow why it work for them, and not the others. The rest say: partially successful - "Already installed. install is not needed because the update is either not applicable or already installed". They are applicable, and they're not already installed. Our inventory is run daily, and nothing changed between the inventory run time and install time. 

       

      The package installs the MSI extracted from the downloaded exe file, the mst and cab files are included in the package.

       

      Any idea's on how to get this to work on the rest of the computers?  Solarwinds tech support was useless, closing the ticket after directing me to the forums...

        • Re: Custom update - Draftsight
          antwesor

          I do not have an answer for you, but I will be interested in seeing the responses Doug. I have always created some kind of applicability for a custom application since the WSUS mechanism depends on that to see if the application needs to be installed. You could try checking to see if you need an updated WSUS certificate and see if that helps, I just created a new WSUS certificate that is 2048 bit and used client certificate management to deploy to our computers. Then I removed all the 3rd party applications and published them again using this new 2048 certificate. I don't think this will help your current issue, but the patch for removing 1024 certificates is coming out in September so I thought I would be proactive and change certificates to 2048 bit before September. More details can be had on PatchZone at this URL

          http://thwack.solarwinds.com/community/application-and-server_tht/patchzone/blog/2012/07/31/3rd-party-updates-with-wsus-local-publishing-recent-microsoft-certificate-changes-may-break-your-process-if-left-unpatched

           

          I will be interested to hear more responses to your question. Sorry I could not be more helpful.

          • Re: Custom update - Draftsight
            tonyab

            Hi dougr,  I am not familiar with DraftSight; however, I installed the current version (V1R2.1 - V9.1.173) on a Win7 x86 client, and noted there is another reg key which could be used, and thus might produce more favorable results.

             

            File Version with Registry Value

            Registry Key = HKEY_LOCAL_MACHINE\SOFTWARE\DassaultSystemes\DraftSight

            Registry Value = InstallDir

            Sub-path = bin\DraftSight.exe

            Comparison: AppRule = Less than 9.0.0.34706

                                 Installed Rule = Equal to 9.0.0.34706

             

            *obviously, you might need more than one rule to cover x64 systems

             

            If you additionally only wanted it to upgrade systems which already had DraftSight installed, you could add a RegKeyExists rule = HKEY_LOCAL_MACHINE\SOFTWARE\DassaultSystemes\DraftSight.  (Again, the same notation for x64 additional rules may apply).

             

            My suggestion would be to start with just an x86 scenario, get that working and then add in an x64 rule (if needed), which will narrow your scope of what works vs. what's broken.

             

            The partial install message is usually indicative of the MSI Product Code matching -- ie the binary and the installed version on the client system.  If I understand your statement, you are using the EXE in your package [Please confirm].  I've only seen this message occur with an MSI package (and yes, I understand the EXE is just a wrapper around an MSI, several MSTs, and a Data1.cab).

             

            Try the new rule set, and see if you get different results.  If not, let us know, and please provide the following details on the client:

            OS / SP

            x86 or x64

            what the registry *and* the draftsight.exe are showing as the installed version number

             

            Last thing:
            PreReq rules = what does the vendor say are the system requirements (XP SP2 or greater)

            AppRules = what conditions should the client meet for this specific version to evaluate as needed (file version is less than x)

            Installed Rules = what tells me this specific version is installed (file version = x)

             

            Sometimes rules get a little more complicated than the examples provided, but the questions to be answered remain the same.

             

            Hope this information helps you,

            -tonya