diff --git a/Sources/PSWritePDF/Cmdlets/CmdletConvertHTMLToPDF.cs b/Sources/PSWritePDF/Cmdlets/CmdletConvertHTMLToPDF.cs
index a12606f..4435684 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletConvertHTMLToPDF.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletConvertHTMLToPDF.cs
@@ -52,10 +52,12 @@ private static class ParameterSetNames
/// Path to an HTML file.
[Parameter(Mandatory = true, ParameterSetName = ParameterSetNames.File)]
+ [ValidateNotNullOrEmpty]
public string FilePath { get; set; }
/// Output PDF path.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string OutputFilePath { get; set; }
/// Open the PDF after creation.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletConvertPDFToText.cs b/Sources/PSWritePDF/Cmdlets/CmdletConvertPDFToText.cs
index a87b0c2..ea6a092 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletConvertPDFToText.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletConvertPDFToText.cs
@@ -40,6 +40,7 @@ public class CmdletConvertPDFToText : PSCmdlet
/// Path to the PDF file.
[Parameter(Mandatory = true, ValueFromPipeline = true, ValueFromPipelineByPropertyName = true)]
[Alias("FullName")]
+ [ValidateNotNullOrEmpty]
public string FilePath { get; set; } = string.Empty;
/// Pages to extract.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletGetPDF.cs b/Sources/PSWritePDF/Cmdlets/CmdletGetPDF.cs
index 4794d39..64d41bd 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletGetPDF.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletGetPDF.cs
@@ -35,6 +35,7 @@ public class CmdletGetPDF : PSCmdlet
{
/// Path to the PDF file.
[Parameter(Mandatory = true, Position = 0, ValueFromPipeline = true)]
+ [ValidateNotNullOrEmpty]
public string FilePath { get; set; } = null!;
/// Ignore document protection.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletMergePDF.cs b/Sources/PSWritePDF/Cmdlets/CmdletMergePDF.cs
index 9a88915..722c07c 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletMergePDF.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletMergePDF.cs
@@ -35,10 +35,12 @@ public class CmdletMergePDF : PSCmdlet
{
/// Paths to PDF files to merge.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string[] InputFile { get; set; }
/// Path for the merged output.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string OutputFile { get; set; }
/// Ignore protection on input files.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletNewPDF.cs b/Sources/PSWritePDF/Cmdlets/CmdletNewPDF.cs
index 6724178..47a79b9 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletNewPDF.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletNewPDF.cs
@@ -40,6 +40,7 @@ public class CmdletNewPDF : PSCmdlet {
/// Output file path.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string FilePath { get; set; } = string.Empty;
/// PDF version to use.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletNewPDFImage.cs b/Sources/PSWritePDF/Cmdlets/CmdletNewPDFImage.cs
index 29518fd..ae21b21 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletNewPDFImage.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletNewPDFImage.cs
@@ -33,6 +33,7 @@ namespace PSWritePDF.Cmdlets;
public class CmdletNewPDFImage : PSCmdlet {
/// Path to the image file.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string ImagePath { get; set; } = string.Empty;
/// Desired image width.
[Parameter] public int Width { get; set; }
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletRegisterPDFFont.cs b/Sources/PSWritePDF/Cmdlets/CmdletRegisterPDFFont.cs
index f9defb4..f74aff5 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletRegisterPDFFont.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletRegisterPDFFont.cs
@@ -40,6 +40,7 @@ public class CmdletRegisterPDFFont : PSCmdlet
/// Path to the font file.
[Parameter(Mandatory = true)]
+ [ValidateNotNullOrEmpty]
public string FontPath { get; set; } = string.Empty;
/// Optional encoding for the font.
diff --git a/Sources/PSWritePDF/Cmdlets/CmdletSplitPDF.cs b/Sources/PSWritePDF/Cmdlets/CmdletSplitPDF.cs
index c35c9dd..f35ce33 100644
--- a/Sources/PSWritePDF/Cmdlets/CmdletSplitPDF.cs
+++ b/Sources/PSWritePDF/Cmdlets/CmdletSplitPDF.cs
@@ -41,12 +41,14 @@ public class CmdletSplitPDF : PSCmdlet
[Parameter(Mandatory = true, ParameterSetName = SplitCountParameterSet)]
[Parameter(Mandatory = true, ParameterSetName = PageRangeParameterSet)]
[Parameter(Mandatory = true, ParameterSetName = BookmarkParameterSet)]
+ [ValidateNotNullOrEmpty]
public string FilePath { get; set; }
/// Destination folder for split files.
[Parameter(Mandatory = true, ParameterSetName = SplitCountParameterSet)]
[Parameter(Mandatory = true, ParameterSetName = PageRangeParameterSet)]
[Parameter(Mandatory = true, ParameterSetName = BookmarkParameterSet)]
+ [ValidateNotNullOrEmpty]
public string OutputFolder { get; set; }
/// Base name for output files.