private void RunPackage() { Package2Class lopackage = new Package2Class(); UCOMIConnectionPointContainer CnnctPtCont = (UCOMIConnectionPointContainer) lopackage; UCOMIConnectionPoint CnnctPt; PackageEventsSink loPES = new PackageEventsSink(); Guid guid = new Guid("10020605-EB1C-11CF-AE6E-00AA004A34D5"); // UUID of PackageEvents Interface //Guid guid = System.Guid.NewGuid(); // UUID of PackageEvents Interface CnnctPtCont.FindConnectionPoint(ref guid, out CnnctPt); int iCookie; CnnctPt.Advise(loPES, out iCookie); object pVarPersistStgOfHost = null; lopackage.LoadFromStorageFile(this.pcDTSFileName, "", guid.ToString(), guid.ToString(), VFPToolkit.files.JustFName(this.pcDTSFileName), ref pVarPersistStgOfHost); lopackage.Execute(); lopackage.UnInitialize(); lopackage = null; CnnctPt.Unadvise(iCookie); //a connection that is created by IConnectionPoint.Advise must be closed by calling IConnectionPoint.Unadvise to avoid a memory leak }//RunPackage