Skip to content

Commit 2fe998e

Browse files
authored
Create README.md
0 parents  commit 2fe998e

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

README.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# PyInstaller Archive Viewer
2+
3+
A C++ tool to inspect and extract contents from PyInstaller archives.
4+
5+
## Features
6+
- Opens and reads PyInstaller archive files.
7+
- Detects PyInstaller version (2.0 or 2.1+).
8+
- Parses and lists files from the archive.
9+
10+
## Requirements
11+
- Windows
12+
- C++17
13+
- CMake
14+
15+
## Usage
16+
17+
### Build
18+
1. Clone the repo:
19+
```sh
20+
git clone https://github.com/your_username/PyInstallerArchiveViewer.git
21+
cd PyInstallerArchiveViewer
22+
```
23+
2. Build:
24+
```sh
25+
mkdir build
26+
cd build
27+
cmake ..
28+
cmake --build .
29+
```
30+
31+
### Run
32+
sh
33+
PyInstallerArchiveViewer.exe path/to/your/archive
34+
35+
36+
## Example
37+
38+
```cpp
39+
#include <iostream>
40+
#include "PyInstArchive.h"
41+
42+
int main(int argc, char* argv[]) {
43+
if (argc != 2) {
44+
std::cerr << "Usage: " << argv[0] << " <path/to/pyinstaller_archive>" << std::endl;
45+
return 1;
46+
}
47+
48+
PyInstArchive archive(argv[1]);
49+
50+
if (!archive.open()) return 1;
51+
if (!archive.checkFile()) {
52+
archive.close();
53+
return 1;
54+
}
55+
if (!archive.getCArchiveInfo()) {
56+
archive.close();
57+
return 1;
58+
}
59+
60+
archive.viewFiles();
61+
archive.close();
62+
63+
return 0;
64+
}

0 commit comments

Comments
 (0)