I'd like to say yes as we've always tried to accommodate feature requests but we're both short on time at the moment, so feel free to post it under the "Issues" tab as a feature request but I can't promise we'll get around to it soon.
↧
New Post: NoCountdown Reposition for Restart prompt with Countdown
↧
Commented Unassigned: Feature Request: -LogOnly switch for Write-Log [66]
Can a -LogOnly switch for Write-Log be added at some point? Or is there another way already?
We'd like to log some things straight to the log to not overwhelm the user at the screen.
Thanks
That_annoying_guy
(BTW: The zipped log files feature is growing on me. I'm trying to sell it to the rest of the group)
Comments: My loging function can do both regular logs and CMTrace/Trace32 logs. CMTrace/Trace32 format is the same. CMTrace I think is a more stable program than Trace32. Take what you like from my function and mix and match with the function included in the deployment toolkit.
We'd like to log some things straight to the log to not overwhelm the user at the screen.
Thanks
That_annoying_guy
(BTW: The zipped log files feature is growing on me. I'm trying to sell it to the rest of the group)
Comments: My loging function can do both regular logs and CMTrace/Trace32 logs. CMTrace/Trace32 format is the same. CMTrace I think is a more stable program than Trace32. Take what you like from my function and mix and match with the function included in the deployment toolkit.
↧
↧
New Post: Show-InstallationRestartPrompt with no users logged in
Howdy. I need my app to reboot at the end of my script and I love Show-InstallationRestartPrompt for the "restart later" option; However, if no user is logged in, the reboot simply never happens. What's a better way to reboot a computer with no users logged in while still maintaining the Show-InstallationRestartPrompt for logged in users? Currently I use this:
Show-InstallationRestartPrompt -CountdownSeconds 500 -CountdownNoHideSeconds 120
Thanks!
Show-InstallationRestartPrompt -CountdownSeconds 500 -CountdownNoHideSeconds 120
Thanks!
↧
New Post: AD OU Deployment Targeting
This has already been brought up in a previous post, but it was not the primary topic:
Previous Topic
So I wanted to start a new one to continue this topic without disrupting the other subject.
Lipid_Venom wrote:
Previous Topic
So I wanted to start a new one to continue this topic without disrupting the other subject.
Lipid_Venom wrote:
We use a special AD OU for Machines that cannot have the "Interactive" installation and must go silently. At this time I am using 2 separate installations, would it be possible to add a query in this script, that if that machine resides in the AD OU to do the silent installation? Not all machines would have the AD Module running, but I did manage to find a way to fun it without.sintaxasn wrote:$filter = "(&(objectCategory=computer)(objectClass=computer)(cn=$env:COMPUTERNAME))" ([adsisearcher]$filter).FindOne().Properties.distinguishedname
Liquid_Venom,When attempting to run this, I receive the following errors:
Using the beta v4, I would suggest you implement as follows - modify the default Deploy-Application.ps1 template and just before the Variables: Environmnent section, addThis must be done before the main App Deploy Toolkit is dotSourced.$filter = "(&(objectCategory=computer)(objectClass=computer)(cn=$env:COMPUTERNAME))" $dn = ([adsisearcher]$filter).FindOne().Properties.distinguishedname If ($dn -match "<Insert your OU name here>") { $deployMode = "NonInteractive" )
Hope this helps.
Dan
Exception calling "FindOne" with "0" argument(s): "An operations error occurred.
"
At line:1 char:38
+$dn = ([adsisearcher]$filter).FindOne <<<< ().Properties.distinguishedname
+CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+FullyQualifiedErrorId : DotNetMethodException
Correct me if I’m wrong, but I’m quite sure the Filter for .FindOne was properly defined?↧
New Post: Show-InstallationRestartPrompt with no users logged in
In case anybody else finds themselves in a dilemma like mine, here's the solution I came up with:
$info = gwmi -class win32_computerSystem -ea silentlycontinue | Select-Object username
if ($info.username.Length -gt 0){
Show-InstallationRestartPrompt -CountdownSeconds 500 -CountdownNoHideSeconds 120
}
else {
Execute-Process "Shutdown" -Arguments "/R /F /T 10"
}
This is in my Post-Installation Phase. ↧
↧
New Post: Upgrade IE7 to IE8 (don't laugh!)
I thought I would share this for the people like me who are stuck in the stone age on Windows XP.
#*===============================================
# Variables: Application
$appVendor = "Microsoft"
$appName = "Internet Explorer"
$appVersion = "8.0"
$appArch = "x86"
$appLang = "EN"
$appRevision = "01"
$appScriptVersion = "1.0.0"
$appScriptDate = "01/01/2014"
$appScriptAuthor = "Scott Gilliland"
#*===============================================
# Variables: Script - Do not modify this section
$deployAppScriptFriendlyName = "Deploy Application"
$deployAppScriptVersion = [version]"3.1.3"
$deployAppScriptDate = "05/22/2014"
$deployAppScriptParameters = $psBoundParameters
# Variables: Environment
$scriptDirectory = Split-Path -Parent $MyInvocation.MyCommand.Definition
# Dot source the App Deploy Toolkit Functions
."$scriptDirectory\AppDeployToolkit\AppDeployToolkitMain.ps1"
#*===============================================
#* END VARIABLE DECLARATION
#*===============================================
#*===============================================
#* PRE-INSTALLATION
If ($deploymentType -ne "uninstall") { $installPhase = "Pre-Installation"
#*===============================================
#Check for IE8 already installed
$ieVer = Get-InstalledApplication -Name "Windows Internet Explorer 8"
If ($ieVer -ne $null) {
Exit-Script -ExitCode "06" # I use a custom error code here for tracking.
}
# Show Welcome Message, close Internet Explorer if required, verify there is enough disk space to complete the install and persist the prompt
Show-InstallationWelcome -CloseApps "iexplore" -CheckDiskSpace -BlockExecution -CloseAppsCountdown "600"
#This uninstalls the GoogleChromeFrame plugin.
Execute-MSI MsiExec.exe -Action Uninstall -Path "{E0778312-DB32-3024-9D86-7E20BE94088C}" -ContinueOnError $true
#*===============================================
#* INSTALLATION
$installPhase = "Installation"
#*===============================================
#This .exe is a custom creation using IEAK with reboot suppression built in.
Execute-Process -FilePath "$scriptDirectory\Files\IE8-Setup-Full.exe" -Arguments "/q" -WindowStyle Hidden -IgnoreExitCodes "3010"
#*===============================================
#* POST-INSTALLATION
$installPhase = "Post-Installation"
#*===============================================
#This checks for a logged on user before selecting a reboot method.
$info = gwmi -class win32_computerSystem -ea silentlycontinue | Select-Object username
if ($info.username.Length -gt 0){
Show-InstallationRestartPrompt -CountdownSeconds 500 -CountdownNoHideSeconds 120
}
else {
Execute-Process "Shutdown" -Arguments "/R /F /T 10"
}
<#Machines with no user logged in do not reboot with Show-InstallationRestartPrompt so it was necessary to identify them and shut them down the old fashioned way. #>
#*===============================================
#* UNINSTALLATION
} ElseIf ($deploymentType -eq "uninstall") { $installPhase = "Uninstallation"
#*===============================================
# Show Welcome Message, close Internet Explorer if required with a 60 second countdown before automatically closing
Show-InstallationWelcome -CloseApps "iexplore" -CloseAppsCountdown "60"
# Show Progress Message (with the default message)
Show-InstallationProgress
#*===============================================
#* END SCRIPT BODY
} } Catch { $exceptionMessage = "$($_.Exception.Message) `($($_.ScriptStackTrace)`)"; Write-Log "$exceptionMessage"; Show-DialogBox -Text $exceptionMessage -Icon "Stop"; Exit-Script -ExitCode 1 } # Catch any errors in this script
Exit-Script -ExitCode 0 # Otherwise call the Exit-Script function to perform final cleanup operations
#*===============================================
Hopefully none of you are stuck in the same boat as me supporting Windows XP and IE7, but if so that will hopefully help you upgrade to IE8!↧
New Post: Stop-Start Services
I have a few apps deployments that require services to be stopped and started. Is this supported in the current version?
Thanks
Thanks
↧
New Post: AD OU Deployment Targeting
Can you try with the following line change?
$filter = "(&(objectCategory=computer)(objectClass=computer)(cn=$($env:COMPUTERNAME)))"
I suspect using the ComputerName variable needs to be encapsulated↧
New Post: Problem with Execute-File and Arguments
Yes, here the error
[24-07-2014 13:56:59] [Installation] Cannot process argument transformation on parameter 'WindowStyle'. Cannot convert value "C:\Program Files (x86)\CM12\Adminconsole EnableSQM=0 DefaultSiteServerName=w1vswd00.nedc.mgmt.axa-tech.intraxa" to type "System.Diagnostics.ProcessWindowStyle". Error: "Unable to match the identifier name C:\Program Files (x86)\CM12\Adminconsole EnableSQM=0 DefaultSiteServerName=w1vswd00.nedc.mgmt.axa-tech.intraxa to a valid enumerator name. Specify one of the following enumerator names and try again: Normal, Hidden, Minimized, Maximized" (at <ScriptBlock>, E:#Package\Microsoft_CM12-Console-R2_5.0.7958.1203_x86\Deploy-Application.ps1: line 95)
and with ' the powershell stops directly.
[24-07-2014 13:56:59] [Installation] Cannot process argument transformation on parameter 'WindowStyle'. Cannot convert value "C:\Program Files (x86)\CM12\Adminconsole EnableSQM=0 DefaultSiteServerName=w1vswd00.nedc.mgmt.axa-tech.intraxa" to type "System.Diagnostics.ProcessWindowStyle". Error: "Unable to match the identifier name C:\Program Files (x86)\CM12\Adminconsole EnableSQM=0 DefaultSiteServerName=w1vswd00.nedc.mgmt.axa-tech.intraxa to a valid enumerator name. Specify one of the following enumerator names and try again: Normal, Hidden, Minimized, Maximized" (at <ScriptBlock>, E:#Package\Microsoft_CM12-Console-R2_5.0.7958.1203_x86\Deploy-Application.ps1: line 95)
and with ' the powershell stops directly.
↧
↧
New Post: Problem with Execute-File and Arguments
Hmmm, doesn't seem to like the variable. Here's the line I use which works perfectly:
Execute-Process -FilePath "$dirFiles\consolesetup.exe" -Arguments "/q TargetDir=`"C:\Program Files\ConfigMgr Console`" EnableSQM=1 DefaultSiteServerName=MySCCMServer"
Modify as needed and try again.↧
New Post: Bold App Title
I am trying to bold the app name display at the initial prompt, because it is not easily seen. I know at line 2871 in AppDeployToolKitMain.ps1 is the call that displays the English WelcomeMessage and App Title. I've already added an additional "'n" to bring it down another line which helps. How do I go about doing this. I know in adding this to the form:
[code]
$LabelAppName.Font = "Arial, 10pt ,style=Bold"
[/code]
makes the whole string bold, I just want the app name bold. Any ideas?
[code]
$LabelAppName.Font = "Arial, 10pt ,style=Bold"
[/code]
makes the whole string bold, I just want the app name bold. Any ideas?
↧
New Post: Problem with Execute-File and Arguments
Thanks, it works.
this symbol ` is a little bit different to ' this.
that was now my fail, thank you. ;)
greetz, aaj
this symbol ` is a little bit different to ' this.
that was now my fail, thank you. ;)
greetz, aaj
↧
New Post: Bold App Title
I was able to get it to work. I had to create a new text object and separate the messages...if interested I can share
↧
↧
New Post: Using with SCCM
sintaxasn wrote:
Hey Paul,Hey Dan, I tried using this method and what ended up happening is that it always chose the 1st deployment type, but the appenforce log file shows that it's waiting for the user to logon, and once the user logs on, it then starts the install from dt 1.
I've not tried this myself, but it should work. Create two deployment types - both identical (same detections, requirements content, command-line etc) with two differences:The toolkit will detect whether it's running as User or System and display the UI accordingly.
- DT #1 - Install for User
- DT #2 - Install for System, Only when no user is logged in
Hope this helps. Dan
↧
Source code checked in, #78adc70057415a47b16636a81a6f0f8f9091945b
Revert last change
↧
New Post: Show-InstallationRestartPrompt with no users logged in
Actually, I've reverted that change. Doing what you're doing is safer I think
↧
New Post: AD OU Deployment Targeting
Excellent! That was indeed the fix, however, this does not seem to be working as I have tested it on multiple machines with a simple test Application - the new release of Java. I followed your advise on the line placement and it is as follows.
# Variables: Script - Do not modify this section
$deployAppScriptFriendlyName = "Deploy Application"
$deployAppScriptVersion = [version]"3.1.4"
$deployAppScriptDate = "06/10/2014"
$deployAppScriptParameters = $psBoundParameters
#Variables: Critical OU
$filter = "(&(objectCategory=computer)(objectClass=computer)(cn=$($env:COMPUTERNAME)))"
$dn = ([adsisearcher]$filter).FindOne().Properties.distinguishedname
If ($dn -match "CN=$env:COMPUTERNAME,OU=Critical,OU=-Devices,DC=###,DC=###,DC=com") { $deployMode -eq "Silent" }
# Variables: Environment
$scriptDirectory = Split-Path -Parent $MyInvocation.MyCommand.Definition
# Dot source the App Deploy Toolkit Functions
."$scriptDirectory\AppDeployToolkit\AppDeployToolkitMain.ps1"
It is still installing as Interactive on the machines that I have verified as in that particular OU. Below is what I've copied from the Install.log[24-07-2014 10:55:47] [Initialization] Oracle_Java_7.0.650_EN_01 setup started.
[24-07-2014 10:55:47] [Initialization] Script [C:\Windows\ccmcache\21\AppDeployToolkit\AppDeployToolkitExtensions.ps1] dot-source invoked by [C:\Windows\ccmcache\21\AppDeployToolkit\AppDeployToolkitMain.ps1]
[24-07-2014 10:55:47] [Initialization] Script [C:\Windows\ccmcache\21\AppDeployToolkit\AppDeployToolkitMain.ps1] dot-source invoked by [C:\Windows\ccmcache\21\Deploy-Application.ps1]
[24-07-2014 10:55:47] [Initialization] Oracle_Java_7.0.650_EN_01 script version is [1.0.0]
[24-07-2014 10:55:47] [Initialization] Deploy Application script version is [3.1.4]
[24-07-2014 10:55:47] [Initialization] The following non-default parameters were passed to [Deploy Application]: [-DeploymentType Install]
[24-07-2014 10:55:47] [Initialization] App Deploy Toolkit Main script version is [3.1.4]
[24-07-2014 10:55:47] [Initialization] App Deploy Toolkit Extensions version is [1.0.0]
[24-07-2014 10:55:47] [Initialization] PowerShell version is [2.0 x64]
[24-07-2014 10:55:47] [Initialization] PowerShell host is [ConsoleHost version 2.0]
[24-07-2014 10:55:48] [Initialization] OS version is [Microsoft Windows 7 Enterprise 64-bit 6.1.7601]
[24-07-2014 10:55:48] [Initialization] Hardware platform is [Physical]
[24-07-2014 10:55:48] [Initialization] Computer name is [###]
[24-07-2014 10:55:48] [Initialization] Current user is [###\###$]
[24-07-2014 10:55:48] [Initialization] Current Culture is [en-US] and UI language is [EN]
[24-07-2014 10:55:48] [Initialization] Deployment type is [Installation]
[24-07-2014 10:55:48] [Initialization] Installation is running in [Interactive] mode.
↧
↧
New Post: Application blocking won't go away.
Howdy,
I've been deploying IE8 to a few thousand workstations and have found 2 machines so far that keep displaying the block message "Launching this application has been temporarily blocked sot hat an installation operation can complete" whenever a user launches IE8 even after a successful install and reboot. Can you tell me if there's a simple change I can make on these few machines this happens on?
↧
New Post: Launch browser after install
Hello,
I'am quite new to PowerShell and I have been tasked to install Office 2010 to computers et immediately launch IE to the display the internal corporate website hosting some information for 2007 to 2010 transition.
Is there any command to use in the kit that will help me ?
thanks
Mathieu
I'am quite new to PowerShell and I have been tasked to install Office 2010 to computers et immediately launch IE to the display the internal corporate website hosting some information for 2007 to 2010 transition.
Is there any command to use in the kit that will help me ?
thanks
Mathieu
↧
New Post: Launch browser after install
Just found the Execute-Process cmdlets in the help ...
Will give a shoot at it. In the mean time of somebody wants to share toughts, feel free ;)
Will give a shoot at it. In the mean time of somebody wants to share toughts, feel free ;)
↧