Skip to content

Protect a PowerPoint Presentation

You’ve built PowerPoint automation with VBA (slide generation, corporate deck builders, export pipelines), and you want to distribute it without exposing your source code. In this tutorial you’ll protect a macro-enabled presentation with the automatic workflow: open, review, produce. We’ll use the bundled SlideBuilder example as our guide, but every step applies unchanged to your own .pptm or .ppam.

What you’ll get:

  • A protected copy (SlideBuilder_protected.pptm) whose macros work exactly as before
  • A compiled, encrypted DLL containing your VBA logic
  • (Optional) Licensing with activation keys

Time needed: 10-15 minutes


  1. Launch VBA Padlock and click Open Office File (Ctrl+O) in the Protect tab

  2. Select your presentation: for this tutorial, SlideBuilder.pptm, which contains a SlideTools module (title/content slides, shapes, transitions, PDF and image export) and a Demo module driving it

  3. VBA Padlock extracts the VBA modules directly from the presentation (macros stay disabled) and analyzes them automatically

The Project Explorer fills with your modules and their verdict badges, and a SlideBuilder.vbapadlock project folder appears next to the file.


Click View Report. For a presentation like SlideBuilder you’ll see:

  • The SlideTools and Demo standard modules: every procedure -> DLL.
  • Application/presentation events wired with WithEvents in class or document modules: they stay in the file (VBA with an event-handler reason); PowerPoint only fires events on code living in the host.

If your code uses symbolic constants (ppLayoutTitle, ppSaveAsPDF, msoShapeRectangle, …), open References: PowerPointConstants (~1,500 pp* constants) and OfficeConstants (mso*) are pre-selected for PowerPoint projects, so those names compile straight into the DLL; no magic numbers needed.


Step 3: Produce the Protected Presentation

Section titled “Step 3: Produce the Protected Presentation”
  1. Optionally review Project Info (title, version, copyright, DLL name; defaults are pre-filled)

  2. Click Produce Protected Office File, or Test Run (Ctrl+F5) to produce and open it in PowerPoint

  3. On success, your folder contains:

SlideBuilder\
├── SlideBuilder.pptm (your source - keep it private!)
├── SlideBuilder.vbapadlock\ (project settings)
├── SlideBuilder_protected.pptm (ship this)
└── bin\
├── SlideBuilderrun32.dll
├── SlideBuilderrun64.dll
└── SlideBuilder.dll

Your original presentation is never modified; Produce always writes to a copy.


  1. Open SlideBuilder_protected.pptm in PowerPoint and enable macros

  2. Press Alt+F8 and run the Demo_* macros, or RunAllDemos to build a sample deck, or ShowMenu for an interactive menu

  3. Press Alt+F11: the SlideTools procedures are now one-line wrappers calling the compiled DLL via the VBAPLBridge module; your logic is gone from the file

The protected PowerPoint presentation running compiled macros


Licensing works identically for every Office host:

  1. Licensing Features tab → Activation Settings: check “Activation key is required to run the protected VBA application”, optionally with hardware-locked keys

  2. Produce again: licensing rules are baked into the DLL, so the protected copy must be rebuilt

  3. Key Generator: generate a test key for your own Hardware ID and verify the activation dialog appears when you run a protected macro

The Excel tutorial’s licensing section covers the options in more detail; everything there applies to PowerPoint too.


Click Distribute in the Protect tab and create a ZIP or folder copy. The protected presentation and its bin\ folder must always travel together:

SlideBuilder_v1.0.zip
├── SlideBuilder_protected.pptm
└── bin\
├── SlideBuilderrun32.dll
├── SlideBuilderrun64.dll
└── SlideBuilder.dll

Protect an Excel Workbook

The most detailed host tutorial, including full licensing setup. Read the guide

Setting Up Licensing

Trial periods, activation keys, and hardware locking. Read the guide

Online Activation

Let users activate over the internet with your own server. Read the guide