locked
How can I make executables can not unzip? RRS feed

  • Question

  • Hello all,

    I have a small problem with Visual C++, all executable software compiled with Visual C++ 2010 can be open with a RAR Tool Software such as Winrar or 7Zip and for my this is a problem, because I want to make a exe non-archive. How can I do this? How can I make executables can not unzip?

    Monday, July 25, 2011 1:07 PM

Answers

  • An executable in Windows would follow the PE format (http://msdn.microsoft.com/en-us/windows/hardware/gg463119.aspx) specification irrespective of what language was used to write the it.

    Any application that can understand this format will be able to open it. The WinRAR and 7-zip kind of application, understand this format and show the data within the executable to the user. 

    As far as I know, there is no way to prevent this.

    • Marked as answer by Rob Pan Monday, August 1, 2011 8:59 AM
    Monday, July 25, 2011 1:59 PM
  • >all executable software compiled with Visual C++ 2010 can
    >be open with a RAR Tool Software such as Winrar or 7Zip

    What do you mean by "open"?
     
    >and for my this is a problem, because I want to make a exe
    >non-archive.

    Most exes *are* non-archives when created. You have to
    archive them if you want them to be in an archived format.

    >How can I do this?

    Clarify what you are trying to do.

    >How can I make executables can not unzip?

    How did they get zipped in the first place?

    First you said:

    "I want to make a exe non-archive."

    then you said:

    "How can I make executables can not unzip?"

    which implies that the exe *is* archived.

    If you want an exe in a compressed or archived format
    which cannot be unzipped or uncompressed, you typically
    use a compressor/archiver which provides password capability.
    For example, an exe which has been compressed with a password
    can be executed but cannot be uncompressed without supplying
    the password. This frustrates attempts to disassemble or
    reverse engineer the exe.

    - Wayne

    • Marked as answer by Rob Pan Monday, August 1, 2011 8:59 AM
    Monday, July 25, 2011 9:29 PM

All replies

  • As long as your exe appear as a file on the user's file system you cannot prevent the user to archive it.

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    Monday, July 25, 2011 1:51 PM
  • An executable in Windows would follow the PE format (http://msdn.microsoft.com/en-us/windows/hardware/gg463119.aspx) specification irrespective of what language was used to write the it.

    Any application that can understand this format will be able to open it. The WinRAR and 7-zip kind of application, understand this format and show the data within the executable to the user. 

    As far as I know, there is no way to prevent this.

    • Marked as answer by Rob Pan Monday, August 1, 2011 8:59 AM
    Monday, July 25, 2011 1:59 PM
  • Thanks for reply.

    This software can make exe non-archive, it's about CoolBasic from link: http://www.coolbasic.com/index.php?lang=en - but this is a little poor programming language and I want to using Visual C++.

    If I build an exe with this software, the exe file cannot be open with any rar Tool, Why?

    Or in other words: What is the name of the exe's file that cannot be open with a RAR Tool?

    What should I tell to Google for search on the internet about Executable wich cannot be open with an RAR Tool?

    Thanks!

    Monday, July 25, 2011 2:20 PM
  • There is no definite answer. Tools that support RAR can support other file formats if they wanted to. But generally speaking unless your exe is an well-known archive, most RAR tools cannot understand it after opening. 



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    Monday, July 25, 2011 2:25 PM
  • >all executable software compiled with Visual C++ 2010 can
    >be open with a RAR Tool Software such as Winrar or 7Zip

    What do you mean by "open"?
     
    >and for my this is a problem, because I want to make a exe
    >non-archive.

    Most exes *are* non-archives when created. You have to
    archive them if you want them to be in an archived format.

    >How can I do this?

    Clarify what you are trying to do.

    >How can I make executables can not unzip?

    How did they get zipped in the first place?

    First you said:

    "I want to make a exe non-archive."

    then you said:

    "How can I make executables can not unzip?"

    which implies that the exe *is* archived.

    If you want an exe in a compressed or archived format
    which cannot be unzipped or uncompressed, you typically
    use a compressor/archiver which provides password capability.
    For example, an exe which has been compressed with a password
    can be executed but cannot be uncompressed without supplying
    the password. This frustrates attempts to disassemble or
    reverse engineer the exe.

    - Wayne

    • Marked as answer by Rob Pan Monday, August 1, 2011 8:59 AM
    Monday, July 25, 2011 9:29 PM