[Bug 44419] Hog4PC 3.x fails to install, VBScript custom action needs vbscript:Global_Replace implementation
wine-bugs at winehq.org
wine-bugs at winehq.org
Fri Jan 26 15:25:55 CST 2018
https://bugs.winehq.org/show_bug.cgi?id=44419
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|-unknown |vbscript
Status|NEW |RESOLVED
Resolution|--- |DUPLICATE
Summary|Hog4PC doesn't install |Hog4PC 3.x fails to
| |install, VBScript custom
| |action needs
| |vbscript:Global_Replace
| |implementation
CC| |focht at gmx.net
--- Comment #2 from Anastasius Focht <focht at gmx.net> ---
Hello folks,
confirming, it's a dupe of bug 38070
Some VBScript custom action needs vbscript:Global_Replace implementation.
--- snip ---
$ WINEDEBUG=+seh,+pid,+relay,+msi,+vbscript wine msiexec -i
./Hog4PC_3-6-1-1440.msi >>log.txt 2>&1
...
0059:005a:trace:msi:ACTION_CustomAction Handling custom action
L"SA_FixLib_Unpack" (c06 L"SA_Script" L"SA_fixtureLibrary")
...
0059:005a:trace:msi:msi_get_property returning L"C:\\Program Files\\Hog4PC\\"
for property L"SA_FixLib_Unpack"
0059:005a:trace:msi:msi_set_property 0x13c918 L"CustomActionData" L"C:\\Program
Files\\Hog4PC\\" -1
...
0059:005a:trace:msi:HANDLE_CustomType5_6 L"SA_Script" L"SA_fixtureLibrary"
...
0059:0070:Starting thread proc 0x7ec81f1c (arg=0xa464ac)
0059:0070:trace:msi:ScriptThread custom action (70) started
0059:0070:trace:msi:ACTION_CallScript function L"SA_fixtureLibrary", script L"'
This script is used to extract the fixture libraries as well\r\n' as the DP8K
files for Hog 4PC. \r\n\r\n'Author: Patrick Hutchinson\r\n'Date :
11/11/2010\r\n\r\n'create global objects\r\nSet shell =
CreateObject(\"WScript.Shell\")\r\nSet fso =
CreateObject(\"Scripting.FileSystemObject\")\r\n\r\n'h"...
...
0059:0070:trace:vbscript:interp_icall
0059:0070:trace:vbscript:interp_assign_member L"CurrentDirectory"
0059:0070:trace:vbscript:disp_get_id using IDispatch
...
0059:0070:trace:vbscript:disp_propput using IDispatch
...
0059:0070:Call KERNEL32.SetCurrentDirectoryW(00a83ed4 L"C:\\Program
Files\\Hog4PC\\Flying Pig Systems\\Hog4PC\\image\\dp8000") ret=f6f941a2
0059:0070:Ret KERNEL32.SetCurrentDirectoryW() retval=00000001 ret=f6f941a2
...
0059:0070:trace:vbscript:interp_icall
0059:0070:trace:vbscript:interp_string
0059:0070:Call oleaut32.SysAllocString(00a61a5c L".hog4lib") ret=f6fd160e
...
0059:0070:trace:vbscript:DispatchEx_QueryInterface (0xa59b68)->(IID_IDispatchEx
0xcaf9c0)
0059:0070:trace:vbscript:DispatchEx_AddRef (0xa59b68) ref=2
0059:0070:trace:vbscript:DispatchEx_InvokeEx (0xa59b68)->(ba 0 3 0xcafa6c
0xcafad0 0xcaf9a0 (nil))
0059:0070:fixme:vbscript:Global_Replace
0059:0070:trace:vbscript:DispatchEx_Release (0xa59b68) ref=1
0059:0070:warn:vbscript:exec_script Failed 800a01bd
...
0059:0070:trace:msi:MsiActiveScriptSite_OnLeaveScript (0xa44c60)
0059:0070:trace:vbscript:ScriptDisp_Release (0xa4b978) ref=1
...
0059:0070:trace:msi:ACTION_CallScript script returned 1603
0059:0070:trace:msi:MsiCloseHandle 1
0059:0070:trace:msi:ScriptThread custom action (70) returned 1603
0059:0070:trace:msi:MsiCloseAllHandles
...
--- snip ---
The relevant part of VBScript code executed in script action, extracted from
.msi:
--- snip ---
' This script is used to extract the fixture libraries as well
' as the DP8K files for Hog 4PC.
'Author: Patrick Hutchinson
'Date : 11/11/2010
'create global objects
Set shell = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
'handle errors encountered
On Error Resume Next
' =================================================== Stand Alone Fixture
Library Unpack Section ===================================================
' This function is used for stand alone Hog 4PC. It is
' used to unpack the fixture libraries during install.
Function SA_fixtureLibrary()
' local variables
Dim FPSCommonAppData_Dir, TargetDir, FixtureLib, FixtureLibDir
' location of the fixture library
Const CommonAppData = &H23& ' the second & denotes a long integer '
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(CommonAppData)
Set objFolderItem = objFolder.Self
FPSCommonAppData_Dir = objFolderItem.Path & "\Flying Pig Systems\Hog
4PC\fixtureLibrary"
' location of the 7za.exe application
TargetDir = Session.Property("CustomActionData") & "Flying Pig
Systems\Hog4PC\image\dp8000"
' Change dir to where the 7za.exe app is located
shell.CurrentDirectory = TargetDir
' Fixture Library with path
FixtureLib = FPSCommonAppData_Dir + "\fixturelib_v4.hog4lib"
' Fixture Library Directory
FixtureLibDir = Replace( FixtureLib, ".hog4lib", "" )
'Verify the existance of the 7za app before trying to run it
If ( fso.FileExists( "7za.exe" ) ) Then
' Change dir to where the fixture library is located
shell.CurrentDirectory = FPSCommonAppData_Dir
' remove any previous libraries if they exist
If ( fso.FolderExists( FixtureLibDir ) ) Then
fso.DeleteFolder( FixtureLibDir )
End If
' do the first unpack
unpack1 = shell.Run("""" & TargetDir & "\7za.exe"" x -y " & """" &
FixtureLib & """" & " -o""" & FixtureLibDir & """", 0, True)
If ( unpack1 = 0 ) Then
' do the second unpack
unpack1 = shell.Run("""" & TargetDir & "\7za.exe"" x -y " & """" &
FixtureLibDir & "\[Content]""" & " -o""" & FixtureLibDir & """", 0, True)
If ( unpack1 = 0 ) Then
fso.DeleteFile( FixtureLibDir & "\[Content]" )
fso.DeleteFile( FixtureLib )
SA_fixtureLibrary = 1 'Success
Else
SA_fixtureLibrary = 3 'Failed
End If
Else
SA_fixtureLibrary = 3 'Failed
End If
Else
SA_fixtureLibrary = 3 'Failed
End If
'clean up
FPSCommonAppData_Dir = empty
TargetDir = empty
FixtureLib = empty
FixtureLibDir = empty
End Function
...
--- snip ---
Use 'winetricks -q wsh57' to work around.
$ du -sh Hog4PC_3-6-1-1440.msi
214M Hog4PC_3-6-1-1440.msi
$ sha1sum Hog4PC_3-6-1-1440.msi
61e3361e181f41eccef330de4b9179e88ca1add3 Hog4PC_3-6-1-1440.msi
$ wine --version
wine-3.0-168-gf54a661767
Regards
*** This bug has been marked as a duplicate of bug 38070 ***
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list