Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 05 AUG 2018 10:20:00PM Barry Stevens wrote:

Carl,

Do have any inbuilt substitute for this win api, or how it should now be called (I assume mswin_GetFileVersionInfo) - GetFileVersionInfo

Barry Stevens


At 06 AUG 2018 04:45PM Barry Stevens wrote:

Jared,

Thank you so much, I will try that.

Barry Stevens


At 06 AUG 2018 06:02PM Barry Stevens wrote:

Sorry, that did not work for me.

debug - I see that objWrapper was empty

Barry Stevens


At 06 AUG 2018 08:34PM Carl Pates wrote:

Hi Bary,

You can't use the MS Script Control in OI64 as MS never produced a 64-bit version of it.

However, I did write a replacement for it call RTI_AXSH (ActiveX Scripting Host) because some things in OI were using it and Bryan also wrote a simple wrapper for it called RTI_SCRIPTHANDLER.

Do you have an insert called RTI_AXSH_EQUATES in v10?

Carl Pates


At 06 AUG 2018 08:47PM Carl Pates wrote:

Hi Barry

I assume you're not using this in v9 currently?

There is no API call defined for this function with the product- basically because it's not really fun to use and involves playing with pointers to memory blocks and structures etc once you involve the VerGetValue function as well. I'll see what's involved because we might be able to provide a wrapper, at least for the basics.

Carl Pates


At 06 AUG 2018 10:27PM Barry Stevens wrote:

»involves playing with pointers to memory blocks and structures etc once you involve the VerGetValue function as well

Yes I was given that api reference and it did my head in :-)

Do you have an insert called RTI_AXSH_EQUATES in v10?

Yes

I assume you're not using this in v9 currently?

No and dont need to

Barry Stevens


At 06 AUG 2018 10:52PM Barry Stevens wrote:

I dont believe it, but I think I might have worked it out.[pre]Function CS_GET_DLL_VERSION(FilePath)

*

*FilePath - Full path to the DLL file. I.e. c:\windows\twain_32.dll

*

* Enable oi10 event syntax by default because this is an event handler

#pragma precomp event_precomp
Declare Function get_property
$Insert Logical
$insert rti_AXSH_Equates

createParam = "VBScript" : @fm : TRUE$ : @fm : @@window→handle

hAXSH = rti_AXSH( REVAXSH_MTD_CREATE$, createParam )

sc = ''

sc<-1> = 'Function getDLLVersion(FilePath)'
sc<-1> = 'Set objFSO = CreateObject("Scripting.FileSystemObject")'
sc<-1> = 'getDLLVersion = objFSO.GetFileVersion(FilePath)'
sc<-1> = 'End Function'

Swap @FM With \0D0A\ In sc

call rti_AXSH( REVAXSH_MTD_ADDCODE$, hAXSH, sC )

method = "getDLLVersion"

args   = FilePath
retVal = rti_AXSH( REVAXSH_MTD_RUN$, hAXSH, method, args )

Return RetVal[/pre]

Barry Stevens


At 07 AUG 2018 05:01AM Carl Pates wrote:

Well done :-) Don't forget to call the DESTROY method at the end or you'll get a memory leak each time you call it.

Carl Pates


At 07 AUG 2018 05:10AM Barry Stevens wrote:

»DESTROY method

Yes, was not sure about that. Thanks

Barry Stevens

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/0b385d18d82b9eaead97b2aa8.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1