Create a Compressed Folder
The following is an example of how to create a folder and set it to be compressed. This is NOT the same as creating a zip file.
public void CreateCompressedFolder(string strFolderName) { // to use this, add System.Management to the references. // this is the folder to be created as a compressed folder. // double up the '\' characters. string strMgmPath = strFolderName.Replace(@"\", @"\\"); // create the folder, if it doesn't already exist if (!System.IO.Directory.Exists(strFolderName)) { // create the folder System.IO.Directory.CreateDirectory(strFolderName); } // build the object path that we'll need for the Management Object. string strMgmObjPath = "Win32_Directory.Name=" + "\"" + strMgmPath + "\""; // create an instance of our System Management Object inside a Using() block so it will get disposed. using (System.Management.ManagementObject objMgm = new System.Management.ManagementObject(strMgmObjPath)) { // compress the folder System.Management.ManagementBaseObject outParams = objMgm.InvokeMethod("Compress", null, null); // determine the results of the compress operation uint ret = (uint)(outParams.Properties["ReturnValue"].Value); if (ret != 0) { throw new System.Exception(string.Format("CreateCompressedFolder() failed with error code: {0}", ret)); } } }