Jump to content
AVIC411.com

osiris

Members
  • Content Count

    26
  • Joined

  • Last visited

Posts posted by osiris

  1. finaly updated my F930BT today:

     

    -  edited RenewallFlib.dll and copied back to the unit

    - tried to update with 8GB SD card, FAT32, 8KB, and all files from the SD copy, but with modified CARDINFO. Did´nt work !

    - use the CARDINFO fron the original Update and 25minutes later success. Used Password 'PASSWORDPASSWORD'

    - copied modified navi.exe to the unit and no nag screen at startup

     

    unanswerd question till now:

    - Blueooth update required?

    - works also on F900BT ? thinks F900 is an other platform or?

     

    Greets

    osiris

  2. @PatrickPR: as i explained every unit has its own dll. It´s unique to every serial number and i think this is the reason why you normaly have to enter your serial number to get the password for the buyed version of the update,

    You could use my script to patch your dll.

     

    @sstroehl: if i correctly remember it´s not the same version. Because there is only  1 prg folder active. in the each prgfolder is a EU090APL.HTM file. copy this file form the Avic a take a look at these file. If you have the 2013 Version installed

    there have to be a line like "Release Version : 5.000000". If its 5.0000 then this is the folder where you have to patch the dll. if you look to the other prg folder there should be the same file bur with realease version 4.0000. After the update the release version is 6.0000. you also should use the cardinfo.cif which is in the download package from flomsen or bolle.

  3. I think language selection function as following :

     

    Menu which language is selected calls an unzip of the selected language files.

    So perhaps it is so, that you have choosen a language which is NOT in the 2013 update. Unzip fails, Avic boots, recognizes the missing languages files an reboots.

     

    Last year i updated a F900BT to 4.0001 or so and only english language files where in the update. Because i knew that, i never changed the setting. Last week I downloaded

    a copy of the 2013 Update withe all language files and copied them to the unit. Now language selection works.

     

    Just a hint, no warranty ;)

  4. I have the password to and everybody who has more than a 3 posts excluding "Please send me the password" got the password from me as a PM.

    The decision not to write the password here is very simple:

     

    It was flomsen´s upload and he decide not to post the password officialy. Since i respect his work and BUYING the update i also do not post it here.

     

    The problem with patching the dll should be solved by the script. So everybody who can use the testmode and has the password should be able to update his unit.

  5. so, i made a litte script to patch your own Renewallib.dll
    You have to be use autoit for this.  I could make a exe-file for patching, but since i never trust download exe-files i decieded to post the source ;)

     

    ATTENTION: Backup your original DLL !!!! Every Avic has its own DLL !!!

    Bevore pasting the patched DLL back to your AVIC be sure to delete the DLL in the AVIC, because Testmode do not overwrite files sometimes (that was my mistake an i wasted 4 hours  on this issue) !

     

    Functions are copied from Autoit forum and only the specific lines for patching are from me ;)
     

    Here we go:

    #include <MsgBoxConstants.au3>
    #include <FileConstants.au3>
    #include <WinAPI.au3>
    
     Local Const $sMessage = "Select RenewalIFLib.dll"
    
        Local $sFileOpenDialog = FileOpenDialog($sMessage, "c:\##\", "(RenewalIFLib.dll)", $FD_FILEMUSTEXIST)
        If @error Then
            MsgBox($MB_SYSTEMMODAL, "", "No file were selected. End.")
            FileChangeDir(@ScriptDir)
        Else
            FileChangeDir(@ScriptDir)
            $sFileOpenDialog = StringReplace($sFileOpenDialog, "|", @CRLF)
    
    		FileCopy($sFileOpenDialog, $sFileOpenDialog & ".original")
    
    
    		$bData = _HexRead($sFileOpenDialog, 0x19F0, 4)
    		if $bdata <> "0x0350A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x19F0, Binary("0x0050A0E3"))
    
    		$bData = _HexRead($sFileOpenDialog, 0x1A10, 4)
    		if $bdata <> "0x0350A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x1A10, Binary("0x0050A0E3"))
    
    		$bData = _HexRead($sFileOpenDialog, 0x1AD8, 4)
    		if $bdata <> "0x0350A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x1AD8, Binary("0x0050A0E3"))
    
    		$bData = _HexRead($sFileOpenDialog, 0x1A3C, 4)
    		if $bdata <> "0x0350A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x1A3C, Binary("0x0050A0E3"))
    
    		$bData = _HexRead($sFileOpenDialog, 0x1C1C, 4)
    		if $bdata <> "0x0250A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x1C1C, Binary("0x0050A0E3"))
    
    		$bData = _HexRead($sFileOpenDialog, 0x1C24, 4)
    		if $bdata <> "0x0150A0E3" Then
    			MsgBox($MB_SYSTEMMODAL, "", "Error")
    			Exit
    		EndIf
    		_hexwrite($sFileOpenDialog, 0x1C24, Binary("0x0050A0E3"))
    
    		MsgBox($MB_SYSTEMMODAL, "", "RenewalIFLib.dll patched!")
        EndIf
    
    
    
    
    	Func _HexWrite($FilePath, $Offset, $BinaryValue)
            Local $Buffer, $ptr, $bLen, $fLen, $hFile, $Result, $Written
    
            ;## Parameter Checks
                If Not FileExists($FilePath)    Then    Return SetError(1, @error, 0)
                $fLen = FileGetSize($FilePath)
                If $Offset > $fLen              Then    Return SetError(2, @error, 0)
                If Not IsBinary($BinaryValue)   Then    Return SetError(3, @error, 0)
                $bLen = BinaryLen($BinaryValue)
                If $bLen > $Offset + $fLen      Then    Return SetError(4, @error, 0)
    
            ;## Place the supplied binary value into a dll structure.
                $Buffer = DllStructCreate("byte[" & $bLen & "]")
    
                DllStructSetData($Buffer, 1, $BinaryValue)
                If @error Then Return SetError(5, @error, 0)
    
                $ptr = DllStructGetPtr($Buffer)
    
            ;## Open File
                $hFile = _WinAPI_CreateFile($FilePath, 2, 4, 0)
                If $hFile = 0 Then Return SetError(6, @error, 0)
    
            ;## Move file pointer to offset location
                $Result = _WinAPI_SetFilePointer($hFile, $Offset)
                $err = @error
                If $Result = 0xFFFFFFFF Then
                    _WinAPI_CloseHandle($hFile)
                    Return SetError(7, $err, 0)
                EndIf
    
            ;## Write new Value
                $Result = _WinAPI_WriteFile($hFile, $ptr, $bLen, $Written)
                $err = @error
                If Not $Result Then
                    _WinAPI_CloseHandle($hFile)
                    Return SetError(8, $err, 0)
                EndIf
    
            ;## Close File
                _WinAPI_CloseHandle($hFile)
                If Not $Result Then Return SetError(9, @error, 0)
        EndFunc
    
        Func _HexRead($FilePath, $Offset, $Length)
            Local $Buffer, $ptr, $fLen, $hFile, $Result, $Read, $err, $Pos
    
            ;## Parameter Checks
                If Not FileExists($FilePath)    Then    Return SetError(1, @error, 0)
                $fLen = FileGetSize($FilePath)
                If $Offset > $fLen              Then    Return SetError(2, @error, 0)
                If $fLen < $Offset + $Length    Then    Return SetError(3, @error, 0)
    
            ;## Define the dll structure to store the data.
                $Buffer = DllStructCreate("byte[" & $Length & "]")
                $ptr = DllStructGetPtr($Buffer)
    
            ;## Open File
                $hFile = _WinAPI_CreateFile($FilePath, 2, 2, 0)
                If $hFile = 0 Then Return SetError(5, @error, 0)
    
            ;## Move file pointer to offset location
                $Pos = $Offset
                $Result = _WinAPI_SetFilePointer($hFile, $Pos)
                $err = @error
                If $Result = 0xFFFFFFFF Then
                    _WinAPI_CloseHandle($hFile)
                    Return SetError(6, $err, 0)
                EndIf
    
            ;## Read from file
                $Read = 0
                $Result = _WinAPI_ReadFile($hFile, $ptr, $Length, $Read)
                $err = @error
                If Not $Result Then
                    _WinAPI_CloseHandle($hFile)
                    Return SetError(7, $err, 0)
                EndIf
    
            ;## Close File
                _WinAPI_CloseHandle($hFile)
                If Not $Result Then Return SetError(8, @error, 0)
    
            ;## Return Data
                $Result = DllStructGetData($Buffer, 1)
    
                Return $Result
        EndFunc
    
        Func _HexSearch($FilePath, $BinaryValue, $StartOffset = Default)
            Local $Buffer, $ptr, $hFile, $Result, $Read, $SearchValue, $Pos, $BufferSize = 2048
    
            ;## Parameter Defaults
                If $StartOffset = Default       Then    $StartOffset = 0
    
            ;## Parameter Checks
                If Not FileExists($FilePath)    Then    Return SetError(1, @error, 0)
                $fLen = FileGetSize($FilePath)
                If $StartOffset > $fLen         Then    Return SetError(2, @error, 0)
                If Not IsBinary($BinaryValue)   Then    Return SetError(3, @error, 0)
                If Not IsNumber($StartOffset)   Then    Return SetError(4, @error, 0)
    
            ;## Prep the supplied binary value for search
                $SearchValue = BinaryToString($BinaryValue)
    
            ;## Define the dll structure to store the data.
                $Buffer = DllStructCreate("byte[" & $BufferSize & "]")
                $ptr = DllStructGetPtr($Buffer)
    
            ;## Open File
                    $hFile = _WinAPI_CreateFile($FilePath, 2, 2, 1)
                    If $hFile = 0 Then Return SetError(5, @error, 0)
    
            ;## Move file pointer to offset location
                $Result = _WinAPI_SetFilePointer($hFile, $StartOffset)
                $err = @error
                If $Result = 0xFFFFFFFF Then
                    _WinAPI_CloseHandle($hFile)
                    Return SetError(5, $err, 0)
                EndIf
    
            ;## Track the file pointer's position
                $Pos = $StartOffset
    
            ;## Start Search Loop
                While True
    
                    ;## Read from file
                        $Read = 0
                        $Result = _WinAPI_ReadFile($hFile, $ptr, $BufferSize, $Read)
                        $err = @error
                        If Not $Result Then
                            _WinAPI_CloseHandle($hFile)
                            Return SetError(6, $err, 0)
                        EndIf
    
                    ;## Prep read data for search
                        $Result = DllStructGetData($Buffer, 1)
                        $Result = BinaryToString($Result)
    
                    ;## Search the read data for first match
                        $Result = StringInStr($Result, $SearchValue)
                        If $Result > 0 Then ExitLoop
    
                    ;## Test for EOF and return -1 to signify value was not found
                        If $Read < $BufferSize Then
                            _WinAPI_CloseHandle($hFile)
                            Return -1
                        EndIf
    
                    ;## Value not found, Continue Tracking file pointer's position
                        $Pos += $Read
    
                WEnd
    
            ;## Close File
                _WinAPI_CloseHandle($hFile)
                If Not $Result Then Return SetError(7, @error, 0)
    
            ;## Calculate the offset and return
                $Result = $Pos + $Result - 1
                Return $Result
        EndFunc
    
    
    
  6. just want to backup my unit, but Supertestmode let me not copy my flash disk to usb ?!

    [update] copied successfully. I have to use a smaller SD card, 64GB with Exfat did not work [/update]

    Is there a solution with normal Testmode which include Totalcommander? When i try i get an script error....

    O, just realized, that F900 F910 ist WINCE OS, F930 seems to be a different OS...

  7. confirmed update on German F930BT  as described by Monster99 :)

     

    tried on F900BT (Integrate version 4.001000 Maps Q1/2014)  doesnt work :( (tried with normal update .- only inserting SD card and waitung for question to update AND with different cardinfo.cif)

     

    tried on F910BT (original version 3.010100, Maps version 02.000400) doesnt work with normal update mode, AND don´t work with different cardinfo.cif  :(
    updated F910 to Integrate version 4.001000 Maps Q1/2014

     

    now trying to copy my installation (F930BT) to F900BT.....

×
×
  • Create New...