What I was REALLY hoping for was "someone" to share how they'd done it WITH the Windows functions.
Well maybe this example is not with windows functions as they are API calls. But I can give an example using a .NET DLL Assembly!
1) Download SharpZipLib and install into the GAC (yes, has to be in the GAC. This is a MS decision!)
2) Add a script task
3) Edit the script
4) Add a reference to the DLL by right clicking on references and adding the reference
5) Initialise the object and use the assembly functions for Zip creation
We use package variables for the output dir and the name of the zip file (we add date info to this filename).
If you want, I possibly could write up a step-by-step article on how to achieve this in managed code.
Hope this makes sense