<#
Exchange On-Prem, Exchange Online
Define mailboxes for migration batch programatically without CSV file
$MigUsers = ConvertTo-CSVDataByte "user1@abc.cz","user2@abc.cz"
New-MigrationBatch -Local -Name LocalMove1 -CSVData $MigUsers -TargetDatabases MBXDB2
#>
function ConvertTo-CSVDataByte {
Param(
[Parameter(Mandatory = $true)]
[ValidateNotNull()]
[String[]]$Emails
)
$CSVData = [system.Text.Encoding]::Default.GetBytes('"EmailAddress"')
$CSVData += [system.Text.Encoding]::Default.GetBytes("`n")
for ($i = 0; $i -le $Emails.Length - 1; $i++) {
$CSVData += [system.Text.Encoding]::Default.GetBytes('"' + $Emails[$i] + '"')
if ($UPNs.Length - 1 -ne $i) {
$CSVData += [system.Text.Encoding]::Default.GetBytes("`n")
}
}
return $CSVData
}