psaadat
Posts: 2
Joined: Fri Aug 16, 2024 10:05 pm

missing windowsvolume in a property

Hi guys,


I have created a java project and I need to set the JRE path to the place , client install my app with adding the new path to it, I have created a property and its value is
"[|WindowsVolume]\[|Manufacturer]\JRE64" ,
then I have written a power shell inline script with immediately run and I have added a JRE Path entry in my ini which point to my property, but after installation the driver name would be missing, here is my script:


# Block for declaring the script parameters.
Param()

# Your code goes here.
$appDirValue = AI_GetMsiProperty APPDIR
$jreConst = "JRE64"
$jrePath = $appDirValue.substring(0, 29) + $jreConst
AI_SetMsiProperty JAVA11 $jrePath


and in the ini the JRE Path is like this:

[Java Runtime Environment]
Main Class=org.springframework.boot.loader.JarLauncher
JRE Path=:\my Manufacturer\JRE64


here is the log:

Line 178: AppSearch: Property: JAVA11, Signature: JAVA11
Line 181: AppSearch: Property: JAVA11, Signature: JAVA11_1
Line 184: AppSearch: Property: JAVA11, Signature: JAVA11_2
Line 187: AppSearch: Property: JAVA11, Signature: JAVA11_3
Line 560: MSI (s) (3C:70) [10:08:32:983]: Component: JAVA11; Installed: Absent; Request: Local; Action: Local
Line 561: MSI (s) (3C:70) [10:08:32:983]: Component: __JAVA1165; Installed: Null; Request: Local; Action: Local
Line 850: AI_SetMsiProperty JAVA11 $jrePathScriptPreambleparam(
Line 868: MSI (s) (3C!7C) [10:08:38:256]: PROPERTY CHANGE: Modifying JAVA11 property. Its current value is '\myCompany\JRE64'. Its new value: 'C:\myCompany\JRE64'.
Line 907: MSI (s) (3C:70) [10:08:38:352]: Executing op: ComponentRegister(ComponentId={43ADBC34-8800-408A-9D78-9580CBD5C5D8},KeyPath=22:\Software\myCompany\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}\JAVA11,State=3,,Disk=1,SharedDllRefCount=0,BinaryType=1)
Line 908: 1: {6D802DB9-C4BF-4676-86B5-1E775A462902} 2: {43ADBC34-8800-408A-9D78-9580CBD5C5D8} 3: 22:\Software\myCompany\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}\JAVA11
Line 968: MSI (s) (3C:70) [10:08:39:536]: Executing op: RegAddValue(Name=JAVA11,Value=\myCompany\JRE64,)
Line 969: WriteRegistryValues: Key: \Software\myCompany\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}, Name: JAVA11, Value: \myCompany\JRE64
Line 1104: Property(S): JAVA11 = C:\myCompany\JRE64
Line 1232: AI_SetMsiProperty JAVA11 $jrePathScriptPreambleparam(
Line 1437: Property(C): JAVA11 = \myCompany\JRE64


Does anyone know what it is like this?
Last edited by psaadat on Mon Aug 19, 2024 6:43 pm, edited 1 time in total.
psaadat
Posts: 2
Joined: Fri Aug 16, 2024 10:05 pm

Re: missing windowsvolume in a property

here is the log: Line 178: AppSearch: Property: JAVA11, Signature: JAVA11
Line 181: AppSearch: Property: JAVA11, Signature: JAVA11_1
Line 184: AppSearch: Property: JAVA11, Signature: JAVA11_2
Line 187: AppSearch: Property: JAVA11, Signature: JAVA11_3
Line 560: MSI (s) (3C:70) [10:08:32:983]: Component: JAVA11; Installed: Absent; Request: Local; Action: Local
Line 561: MSI (s) (3C:70) [10:08:32:983]: Component: __JAVA1165; Installed: Null; Request: Local; Action: Local
Line 850: AI_SetMsiProperty JAVA11 $jrePathScriptPreambleparam(
Line 868: MSI (s) (3C!7C) [10:08:38:256]: PROPERTY CHANGE: Modifying JAVA11 property. Its current value is '\myComp\JRE64'. Its new value: 'C:\myComp\JRE64'.
Line 907: MSI (s) (3C:70) [10:08:38:352]: Executing op: ComponentRegister(ComponentId={43ADBC34-8800-408A-9D78-9580CBD5C5D8},KeyPath=22:\Software\myComp\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}\JAVA11,State=3,,Disk=1,SharedDllRefCount=0,BinaryType=1)
Line 908: 1: {6D802DB9-C4BF-4676-86B5-1E775A462902} 2: {43ADBC34-8800-408A-9D78-9580CBD5C5D8} 3: 22:\Software\myComp\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}\JAVA11
Line 968: MSI (s) (3C:70) [10:08:39:536]: Executing op: RegAddValue(Name=JAVA11,Value=\myComp\JRE64,)
Line 969: WriteRegistryValues: Key: \Software\myComp\{ADE3A0F4-FE78-4CC7-A6AE-57464EACE080}, Name: JAVA11, Value: \myComp\JRE64
Line 1104: Property(S): JAVA11 = C:\WorkDynamics Technologies\JRE64
Line 1232: AI_SetMsiProperty JAVA11 $jrePathScriptPreambleparam(
Line 1437: Property(C): JAVA11 = \myComp\JRE64
Catalin
Posts: 7513
Joined: Wed Jun 13, 2018 7:49 am

Re: missing windowsvolume in a property

Hello and welcome to our forums,

This is indeed quite strange.

If you add a messagebox to your code to display the $appDirValue, does it return a correct value?

You can use the following to add a messagebox:

Code: Select all

Add-Type -AssemblyName PresentationFramework
$appDirValue = AI_GetMsiProperty APPDIR
[System.Windows.MessageBox]::Show($appDirValue)

In addition to that, we should also display the $jrePath to make sure it's concatenated correctly.

If both are correct, then there might be something else that modifies the property.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”