Project

PSWriteOffice

PowerShell document automation across OfficeIMO's document, spreadsheet, presentation, PDF, Project, Access, EPUB, invoicing, and conversion engines.

Stars 654
Forks 82
Open issues 1
Total downloads 4,320,051
Release OfficeIMO-v3.5.3
Language: C# Updated: 2026-11-03
Cmdlet

Save-OfficeEmail

Module
PSWriteOffice
Inputs
OfficeIMO.Email.EmailDocument
Outputs
OfficeIMO.Email.EmailWriteResult

Saves an email document as EML, EMLX, MSG, or TNEF with fidelity diagnostics.

Syntax

Save-OfficeEmail
-Document <EmailDocument>
[-Format <EmailFileFormat>]
[-Options <EmailWriterOptions>]
[-PassThru]
[-Path] <String>
[<CommonParameters>]
#
Parameter set: All Parameter Sets

Examples

Save a message with an explicit loss policy.

$options = New-OfficeEmailWriterOptions -ConversionLossPolicy Block
$message | Save-OfficeEmail -Path .\Message.eml -Options $options -PassThru

Parameters

-Document EmailDocument requiredpipeline: True (ByValue)
Email document to save.
-Format EmailFileFormat optional
Optional explicit output format. By default it is inferred from the filename.
Possible values: Unknown, Eml, OutlookMsg, Tnef, Mbox, OutlookTemplate, Emlx
-Options EmailWriterOptions optional
Optional preservation, projection, encoding, and output limits.
-PassThru SwitchParameter optional
Emit the object created or changed by the command.
-Path String requiredposition: 0
Destination path.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.