public void CreateTransformSummaryInfo( Database referenceDatabase, string transformFile, TransformErrors errors, TransformValidations validations) { if (referenceDatabase == null) { throw new ArgumentNullException("referenceDatabase"); } if (String.IsNullOrEmpty(transformFile)) { throw new ArgumentNullException("transformFile"); } uint ret = NativeMethods.MsiCreateTransformSummaryInfo( (int)this.Handle, (int)referenceDatabase.Handle, transformFile, (int)errors, (int)validations); if (ret != 0) { throw InstallerException.ExceptionFromReturnCode(ret); } }
public void CreateTransformSummaryInfo( Database referenceDatabase, string transformFile, TransformErrors errors, TransformValidations validations) { if (referenceDatabase == null) { throw new ArgumentNullException("referenceDatabase"); } if (String.IsNullOrEmpty(transformFile)) { throw new ArgumentNullException("transformFile"); } uint ret = NativeMethods.MsiCreateTransformSummaryInfo( (int) this.Handle, (int) referenceDatabase.Handle, transformFile, (int) errors, (int) validations); if (ret != 0) { throw InstallerException.ExceptionFromReturnCode(ret); } }
/// <summary> /// Apply a transform to the database, recording the changes in the "_TransformView" table. /// </summary> /// <param name="transformFile">Path to the transform file</param> /// <exception cref="InstallerException">the transform could not be applied</exception> /// <exception cref="InvalidHandleException">the Database handle is invalid</exception> /// <remarks><p> /// Win32 MSI API: /// <a href="http://msdn.microsoft.com/library/en-us/msi/setup/msidatabaseapplytransform.asp">MsiDatabaseApplyTransform</a> /// </p></remarks> public void ViewTransform(string transformFile) { TransformErrors transformErrors = TransformErrors.AddExistingRow | TransformErrors.DelMissingRow | TransformErrors.AddExistingTable | TransformErrors.DelMissingTable | TransformErrors.UpdateMissingRow | TransformErrors.ChangeCodePage | TransformErrors.ViewTransform; this.ApplyTransform(transformFile, transformErrors); }
/// <summary> /// Apply a transform to the database, specifying error conditions to suppress. /// </summary> /// <param name="transformFile">Path to the transform file</param> /// <param name="errorConditionsToSuppress">Error conditions that are to be suppressed</param> /// <exception cref="InstallerException">the transform could not be applied</exception> /// <exception cref="InvalidHandleException">the Database handle is invalid</exception> /// <remarks><p> /// Win32 MSI API: /// <a href="http://msdn.microsoft.com/library/en-us/msi/setup/msidatabaseapplytransform.asp">MsiDatabaseApplyTransform</a> /// </p></remarks> public void ApplyTransform(string transformFile, TransformErrors errorConditionsToSuppress) { if (String.IsNullOrEmpty(transformFile)) { throw new ArgumentNullException("transformFile"); } uint ret = NativeMethods.MsiDatabaseApplyTransform((int) this.Handle, transformFile, (int) errorConditionsToSuppress); if (ret != 0) { throw InstallerException.ExceptionFromReturnCode(ret); } }
/// <summary> /// Apply a transform to the database, specifying error conditions to suppress. /// </summary> /// <param name="transformFile">Path to the transform file</param> /// <param name="errorConditionsToSuppress">Error conditions that are to be suppressed</param> /// <exception cref="InstallerException">the transform could not be applied</exception> /// <exception cref="InvalidHandleException">the Database handle is invalid</exception> /// <remarks><p> /// Win32 MSI API: /// <a href="http://msdn.microsoft.com/library/en-us/msi/setup/msidatabaseapplytransform.asp">MsiDatabaseApplyTransform</a> /// </p></remarks> public void ApplyTransform(string transformFile, TransformErrors errorConditionsToSuppress) { if (String.IsNullOrEmpty(transformFile)) { throw new ArgumentNullException("transformFile"); } uint ret = NativeMethods.MsiDatabaseApplyTransform((int)this.Handle, transformFile, (int)errorConditionsToSuppress); if (ret != 0) { throw InstallerException.ExceptionFromReturnCode(ret); } }
private void ReportErrorsAndWarnings(TransformErrors errors, bool toXml, bool includeInfo) { string message = (toXml ? "Document object to XML" : "Document XML to object"); if (errors.IsValid()) { Console.WriteLine("\n\nNo errors or warnings to report from converting " + message + ".\n"); } else { Console.WriteLine("\n\nErrors/warnings from converting " + message + ":\n"); } // printing everything (to include INFO messages as well) foreach (TransformError transformError in errors.GetErrors()) { if (includeInfo || transformError.GetErrorLevel() != ErrorLevel.INFO) { Console.WriteLine(transformError); } } }