Menu

Possible bug with batch mode

fec
2015-06-10
2015-06-18
  • fec

    fec - 2015-06-10

    On old innounp (prior to 0.42) it was possible to extract non-encrypted file from encrypted installer using -p and/or not, -b switch.

    Like this: innounp.exe -x -y -p"fakepswrd" -b -d"e:\" "e:\setup.exe" "somefile.zzz"
    or: innounp.exe -x -y -p"fakepswrd" -d"e:\" "e:\setup.exe" "somefile.zzz"

    On innounp 0.42, it is possible only without -b switch. This is intended or more like a bug?

    Another thing, with extracting encrypted file. Before 0.42, innounp did not ask for password if it was passed through -p switch (regardless of -b). Now, with the newest version, innounp still asks for password when -b switch is not specified.

     
    • Ariman

      Ariman - 2015-06-10

      On old innounp (prior to 0.42) it was possible to extract non-encrypted file from encrypted installer using -p and/or not, -b switch.

      You don't need -p to extract non-encrypted file. This switch is only applied to encrypted files.

      Another thing, with extracting encrypted file. Before 0.42, innounp did not ask for password if it was passed through -p switch (regardless of -b). Now, with the newest version, innounp still asks for password when -b switch is not specified.

      I don't see this on my side. I've downloaded release version 0.42 and tried to extract encrypted file with -p switch. No password prompts appeared. It is possible that you specified wrong password. In such cases you will see password prompt as if no password were specified with -p (warning message will be shown though).

       
  • fec

    fec - 2015-06-12

    Ok, I understand. Maybe I was worried a little for backward compatibility, but program still works fine, even if one switch behaves different than before. Sorry for my spam.

    Just one more question - Any chances that innounp will support installers packed by freearc and winrar in the future (I mean those with InnoCallback.dll)?

     
    • Ariman

      Ariman - 2015-06-15

      Ok, I understand. Maybe I was worried a little for backward compatibility, but program still works fine, even if one switch behaves different than before. Sorry for my spam.

      No problem. I honestly couldn't see the difference in behavior between versions. So may be what you're describing is some sort of bug. Could you provide more detailed description about each use-case: version, command line, expected result and actual result? May be I didn't understand you properly. I would like to find why program behaves differently since no changes were made in that area.

      Just one more question - Any chances that innounp will support installers packed by freearc and winrar in the future (I mean those with InnoCallback.dll)?

      Could you share a sample installer? In installers I've seen all files packed with freearc or rar are not part of install script. They are just in regular archives but with names like setup-X.bin and they can be extracted with regular freearc and rar tools. But I'm not sure if they were using InnoCallback.dll.

       

      Last edit: Ariman 2015-06-15
      • fec

        fec - 2015-06-18

        No problem. I honestly couldn't see the difference in behavior between versions. So may be what you're describing is some sort of bug. Could you provide more detailed description about each use-case: version, command line, expected result and actual result? May be I didn't understand you properly. I would like to find why program behaves differently since no changes were made in that area.

        Let's say I have some encrypted installer and I want to extract one non-encrypted file from it.

        Command1: innounp.exe -x -y -p"asd" -d"e:\" "e:\K-Lite_Codec_Pack_1080_Full.exe" -c"{tmp}\" "{tmp}\klcp_detect.dll"
        Command2: innounp.exe -x -y -p"asd" -b -d"e:\" "e:\K-Lite_Codec_Pack_1080_Full.exe" -c"{tmp}\" "{tmp}\klcp_detect.dll"

        On innounp 0.41, both commands work same. There is a message which says "Warning: incorrect password", but file is extracted anyway.
        On innounp 0.42, only first command will work like in old innounp. With -b switch, it is not possible to extract this file, only "Critical error: Incorrect password specified" message.

        Password "asd" is of course invalid and I know that -p switch is not needed for extracting non-encrypted files, but in some cases, this could be useful. For example, in one similar command I could have support for: 'extracting non-encrypted files', 'handling encrypted files with unknown password' and 'extracting encrypted files when I know password'. All that regardless of -b switch (which could be useful to change in other situations/combinations because of next part prompt).

        Now, I have same encrypted installer and I want to (try) extract one encrypted file from it.

        Command1: innounp.exe -x -y -p"asd" -d"e:\" "e:\K-Lite_Codec_Pack_1080_Full.exe" -c"{app}\Tools\" "{app}\Tools\CodecTweakTool-1.bin"
        Command2: innounp.exe -x -y -p"asd" -b -d"e:\" "e:\K-Lite_Codec_Pack_1080_Full.exe" -c"{app}\Tools\" "{app}\Tools\CodecTweakTool-1.bin"

        On innounp 0.41, both commands work same. There is no prompt for password because it was already passed by -p switch (well, this is how I thought it works). Result message is: "Warning: incorrect password" + "Error (Exception) "The source file is corrupted" at address xxxx", because - as in previous example - "asd" password is invalid.
        On innounp 0.42, executing first command will result in password prompt. Second command works like in old innounp - no password prompt. Result message is a little different but that's not the point here.

        I hope it's more clear now. I tried to make it as simple as possible to show those differences between 0.42 and older versions, but of course innounp can be used in other/different ways and it doesn't have to be a 'problem'. Still, there is a small chance, that some tool, program or script, would require some minor corrections (depending on how innounp was used or for what). And please, don't understand me wrong here. I'm not saying that version 0.42, should behave same like old ones.

        Could you share a sample installer? In installers I've seen all files packed with freearc or rar are not part of install script. They are just in regular archives but with names like setup-X.bin and they can be extracted with regular freearc and rar tools. But I'm not sure if they were using InnoCallback.dll.

        Technically yes, but practical this is still a part of Inno Setup installer and is treated/counted as a whole (like when I click on it, and install whatever is inside). Well, it is not a request. I've been wondering about it lately because it would be great to handle those packers in one program (more convenient and simpler for users). I should ask this firstly: would it be possible without some heavy changes, or - maybe more important - does it make sense from innounp creator point of view?

        InnoCallback.dll has no real meaning here. I mentioned it previously because all installers that I heave seen (with this file), were using similar naming scheme for slices (like some.setup.exe + some.setup-1.bin + some.setup-2.bin and so on). Well, that was wrong assumption. It is possible (but not without some programing knowledge) to change part of the script that handles slices to other naming scheme (like some.setup.exe + pack1.dat + pack2.dat).

        Well, there are many possible problems and it seems that it is not worth the trouble. Sorry for my spam :).

         

        Last edit: fec 2015-06-18

Log in to post a comment.