PoshCode Archive  Artifact [694273dcc1]

Artifact 694273dcc144114c12cb27b0f6e4253767e971ab085ce218a8ee919646a2e665:

  • File Parameter-Automation.ps1 — part of check-in [e334f8b9cd] at 2018-06-10 13:46:47 on branch trunk — Pseudocode solution suggestion on sqlsetup parameter automation (user: Daniel Sorlov size: 1604)

# encoding: utf-8
# api: powershell
# title: Parameter Automation
# description: Pseudocode solution suggestion on sqlsetup parameter automation
# version: 0.1
# type: function
# author: Daniel Sorlov
# license: CC0
# function: Add-Argument
# x-poshcode-id: 4851
# x-archived: 2014-04-10T15:36:17
# x-published: 2014-01-30T07:40:00
#
#

function Add-Argument
{
	[CmdletBinding()]
	[OutputType([string])]
	PARAM(
		[Parameter(Mandatory,Position=0,ValueFromPipelineByPropertyName)]
		[ValidateNotNullOrEmpty]
		[string]$Name,

		[Parameter(Mandatory,Position=1,ValueFromPipelineByPropertyName)]
		[ValidateNotNullOrEmpty]
		[string]$Value
	)

	BEGIN
	{
		$result = "/{0}='{1}' -f $Name $Value		
		Write-Output $result
	}

}

### MED OVANSTĂ
ENDE - LÖSNING 1 - sätt värden i scriptet
########################################################################
$processName = (Resolve-Path "setup.exe")
$argumentList = @()

$argumentList += Add-Argument "SQLSVCACCOUNT" "AnAccount"
$argumentList += Add-Argument "SQLPASSWORD" "SecretStuff"
$argumentList += Add-Argument "SQLCOLLATION" "SomeCollationId"

Start-Process $processName -ArgumentList $argumentList

### MED OVANSTĂ
ENDE - LÖSNING 2 - spara värden i csv fil enligt nedan:
### Name,Value
### SQLSVCACCOUNT,AnAccount
### SQLPASSWORD, SecretStuff
### SQLCOLLATION, SomeCollationId
########################################################################

$processName = (Resolve-Path "setup.exe")
Start-Process $processName -ArgumentList (Import-CSV .\MyARgumentFile.csv | Add-Argument)