3 Replies Latest reply on Feb 22, 2017 9:23 PM by helgesonc

    ProcessBook 2015 R2 Add-In Issue



      We have a PI ProcessBook Add-In (.NET 4.0) that has been working fine for several years.  Recently a customer installed it on a computer with ProcessBook 2015 R2 and now every time ProcessBook opens on that computer there is a popup error with the title "Element Relative Display" and text "Unable to cast object of type 'System.__ComObject' to type 'PISDK.PISDKClass'.


      I was able to replicate the issue in-house on a test VM (Windows Server 2008).  When remote debugging the Add-In, however, I can verify that there are no errors/exceptions thrown during any of the code in the "OnConnection" Sub.  That message comes up after any code I can step through.  I tried switching out the references by changing the following but it did not help.

      * OSIsoft.PISDK.dll: ->

      * OSIsoft.PBOjbLib.dll: (I don't think this DLL was version stamped properly)  ->

      * OSIsoft.PBSymLib.dll: (I don't think this DLL was version stamped properly)  ->


      I do not have ProcessBook 2015 R2 installed on my dev machine because we are trying to keep backwards compatibility back to ProcessBook 2012 SP1 - is that not going to be possible?

      Any ideas on how to narrow down the problem source since remote debugging is not finding it?



        • Re: ProcessBook 2015 R2 Add-In Issue

          Hi Caleb,


          Thanks for posting on PI Square.

          Looking at the issue, my initial inclination is that the version of ActiveView (which contains the processbook plugin) is not compatible with the version of Processbook.


          Would it be possible for you to downgrade the version of Processbook to the version of ActiveView? The latest version of ActiveView is 2014 or 3.4.  Please try downgrading Processbook to match (2014 or 3.4).


          Please let us know if this clears the error.



          • Re: ProcessBook 2015 R2 Add-In Issue

            Update:  it turns out that even though the following line itself did not error, removing it and instead using local PISDK.PISDK objects in the various functions is what got rid of the popup message.

            Private pPISDK As New PISDK.PISDK


            Edit:  reverting the references back to the original DLLs was also possible.