Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Create a PCP file programmatically


4 replies to this topic

NeilH

NeilH
  • Full Members
  • 3 posts

Posted 15 January 2010 - 14:16

I must be missing something here, it seams I can create new Releases, build releases, build patches.

But how do I create a PCP file via automation (Programmatically)...via vbscript, powershell.....C# anything.....just give me a clue.

I can create a PCP file with Orca....perhaps even as a template, but then how do I update the PCP file programmatically.

Please would someone point the way.

Neil

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 15 January 2010 - 18:50

Quote from the MSI SDK documentation:
"The .pcp file is a binary database file with the same format as a Windows Installer database (.msi file), but with a different database schema. Therefore a .pcp file can be authored by using the same tools used for an installer database."

So the same automation methods should work to modify the tables in the PCP.

akerl

akerl
  • Full Members
  • 104 posts

Posted 17 January 2010 - 09:28

... or you can use WIX to create a PCP file.

LG

Andreas Kerl

Inside Windows Installer 4.5
ISBN 3-86645-431-7


NeilH

NeilH
  • Full Members
  • 3 posts

Posted 18 January 2010 - 12:02

Thank you,

What I ended up doing is creating a temple PCP file using Installshield IDE which I will use as a template for all other patches.

For each patch I can use VBscripting and the WindowsInstaller.Installer object update the few tables that need updating.

I was not sucessfull in using Installshield Automation in opening a PCP file.

Neil

Edited by NeilH, 18 January 2010 - 12:05.


dxue

dxue
  • Full Members
  • 33 posts

Posted 21 January 2010 - 18:56

This is what I had used for my automation: http://www.contactez...pport/msi7.html

It works.