All Projects → petemc89 → craXcel-cli

petemc89 / craXcel-cli

Licence: MIT License
Command line application to unlock Microsoft Office password protected files.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to craXcel-cli

Office365FiddlerExtension
This Fiddler Extension is an Office 365 centric parser to efficiently troubleshoot Office 365 client application connectivity and functionality.
Stars: ✭ 23 (-47.73%)
Mutual labels:  excel, word, office, powerpoint, office365
rgpipe
lesspipe for ripgrep for common new filetypes using few dependencies
Stars: ✭ 21 (-52.27%)
Mutual labels:  excel, word, office, powerpoint
OfficeExtractor
Extracts embedded OLE objects from Word, Excel, PowerPoint, Open Office and RTF files without needing the original programs
Stars: ✭ 67 (+52.27%)
Mutual labels:  excel, word, office, powerpoint
Docs2Pdf
Bulk convert word/powerpoint/excel file to pdf.
Stars: ✭ 27 (-38.64%)
Mutual labels:  excel, word, office, powerpoint
Office Ribbonx Editor
An overhauled fork of the original Custom UI Editor for Microsoft Office, built with WPF
Stars: ✭ 205 (+365.91%)
Mutual labels:  excel, word, office, powerpoint
Rage
Rage allows you to execute any file in a Microsoft Office document.
Stars: ✭ 68 (+54.55%)
Mutual labels:  excel, word, powerpoint, microsoft-office
Unioffice
Pure go library for creating and processing Office Word (.docx), Excel (.xlsx) and Powerpoint (.pptx) documents
Stars: ✭ 3,111 (+6970.45%)
Mutual labels:  excel, word, powerpoint
Gotenberg Go Client
Go client for the Gotenberg API
Stars: ✭ 35 (-20.45%)
Mutual labels:  excel, word, powerpoint
Desktopeditors
An office suite that combines text, spreadsheet and presentation editors allowing to create, view and edit local documents
Stars: ✭ 1,008 (+2190.91%)
Mutual labels:  excel, word, office
Vbasync
Cross-platform tool to synchronize macros from an Office VBA-enabled file with a version-controlled folder
Stars: ✭ 98 (+122.73%)
Mutual labels:  excel, word, powerpoint
Gotenberg Php Client
PHP client for the Gotenberg API
Stars: ✭ 80 (+81.82%)
Mutual labels:  excel, word, powerpoint
Androiddocumentviewer
Android 文档查看: word、excel、ppt、pdf,使用mupdf及tbs
Stars: ✭ 235 (+434.09%)
Mutual labels:  excel, word, office
Mschart
📊 mschart: office charts from R
Stars: ✭ 94 (+113.64%)
Mutual labels:  word, office, powerpoint
Docxtemplater
Generate docx pptx and xlsx (Microsoft Word, Powerpoint, Excel documents) from templates, from Node.js, the Browser and the command line / Demo: https://www.docxtemplater.com/demo
Stars: ✭ 1,990 (+4422.73%)
Mutual labels:  excel, word, powerpoint
Documentserver
ONLYOFFICE Document Server is an online office suite comprising viewers and editors for texts, spreadsheets and presentations, fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
Stars: ✭ 2,335 (+5206.82%)
Mutual labels:  excel, word, office
Npoi
A .NET library for reading and writing Microsoft Office binary and OOXML file formats.
Stars: ✭ 1,751 (+3879.55%)
Mutual labels:  excel, word, office
Kkfileviewofficeedit
文件在线预览及OFFICE(word,excel,ppt)的在线编辑
Stars: ✭ 234 (+431.82%)
Mutual labels:  excel, word, office
excel-to-python-course
Student materials and handouts for Excel to Python course
Stars: ✭ 73 (+65.91%)
Mutual labels:  excel, office
lazyExcel
a simply software like MS-Excel.it can be running muiti-platform...
Stars: ✭ 37 (-15.91%)
Mutual labels:  excel, office
flutter filereader
Flutter实现的本地文件(pdf word excel 等)查看插件,非在线预览
Stars: ✭ 101 (+129.55%)
Mutual labels:  excel, word

Check out the new web app!


craXcel-cli (v2.0)

Python command line application to unlock Microsoft Office password protected files.


craxcel-cli-basic

craxcel-cli-list


What is craXcel

craXcel ("crack-cel") is a tool that makes removing various password protections from Microsoft Office files seemless. It works by directly amending the underlying XML files that make up modern Microsoft Office files.

Please note that craXcel cannot unlock encrypted files.


Supported applications

As of V2.0:

  • Microsoft Excel (workbook, worksheet, vba)
    • .xlsx
    • .xlsm
  • Microsoft Word (modify, format, vba)
    • .docx
    • .docm
  • Microsoft Powerpoint (modify, vba)
    • .pptx
    • .pptm

Others may work, but have not been tested.

Important note on unlocking the VBA project of macro files

Upon unlocking the VBA Project of a Macro Enabled file, that file will state it has encountered issues and needs to recover... DO NOT PANIC, this is normal.

The steps to follow to complete the unlock is as follows:

  1. Open the unlocked file and click 'Enable Content' on the warning:

image

  1. Click 'OK' on the following pop-up:

image

  1. Open Visual Basic from the Developer toolbar:

image

  1. Open VBAProject Propeties under Tools:

image

  1. Navigate to the Protection tab and enter a new password (a one character password is fine, as we will be removing it again straight away). Click 'OK'.

image

  1. Head back in to VBAProject Properties > Protection tab, and de-select the 'Lock project for viewing' checkbox and clear any passwords in the boxes below. Click 'OK'.

  2. The modules will now be unlocked and you can save the document without having to repeat these steps.

image

Note to developers: If you're willing to take on the challenge of automating these steps (preferably without user input mimicking...) you are welcome to contribute!


Installation

Prerequisites

  1. Download and install Python (v3+) (https://www.python.org/downloads/)

Step-by-Step

  1. Clone or download the repository from GitHub to a local folder of your choosing
  2. Open a terminal of your choice (i.e. cmd, powershell, bash)
  3. In the terminal navigate to the folder with craxcel (from step 1)
    • If you're not familiar with how to do this, search online for: "[name of terminal] change directory"
  4. In the terminal, enter the command: pip install -r requirements.txt
    • If you have trouble, try opening the terminal as an administrator
  5. You are now good to go! Refer to the Usage section below for instructions on how to use craXcel

If You Get Stuck…

Usage

Basic

  1. Open a terminal of your choice (i.e. cmd, powershell, bash)
  2. In the terminal, navigate to the folder with craxcel
  3. In the terminal, enter the command: python craxcel.py yourfilename.xlsx
    • The terminal doesn't necessarily have to be in the same folder as craxcel, and nor does your file
    • If craxcel is not located in the current directory, simply give the terminal the full path, i.e.:
      • python 'c:/users/me/downloads/craxcel/craxcel.py' yourfile.xlsx
    • The same applies in the case of your file, simply give the terminal the full path, i.e.:
      • python craxcel.py 'c:/users/me/documents/yourfile.xlsx'
    • And you can, of course, combine these for both if required, i.e.:
      • python 'c:/users/me/downloads/craxcel/craxcel.py' 'c:/users/me/documents/yourfile.xlsx'
  4. The unlocked file will be saved in the created 'unlocked' folder where the app is installed

List Mode

craXcel also has the ability to unlock multiple files at a time!

  1. Create a .txt file with a line for each filepath (see file-list-example.txt for an example)
  2. Instead of entering the filename of an individual Microsoft Office application, enter the .txt filename
  3. Finish the command by entering '--list', i.e.
    • python craxcel.py 'c:/users/me/documents/list-of-files.txt' --list

Options

  • craXcel has several options that can be passed in for more advanced uses, i.e.:
    • Unlock the VBA Project (macro file) of a macro enabled file
      • python craxcel.py yourfile.xlsm --vba
    • Selecting to only remove Workbook protection (leaving Worksheet protection intact)
      • python craxcel.py yourfile.xlsx -wb
    • Selecting to only remove Worksheet protection (leaving Workbook protection intact)
      • python craxcel.py yourfile.xlsx -ws
    • Run without deleting the temporary XML files
      • python craxcel.py yourfile.xlsx --debug
  • For a full list of options, enter the command: python craxcel.py --help

Contribution

If you have a feature you would like to see you can either raise an issue in the GitHub repository, or branch off and give it a go yourself!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].