posted
29/01/10
By Fredrik Wall
This function will not kill notes it self.
It will kill the processes.
When working with notes many people
uses a file called killnotes.exe.
This file will help when Notes hangs and you
can’t start a new notes.
It will Stop notes started processes.
This function will do the same:
function killNotes {
Stop-Process -name "nlnotes" -force
Stop-Process -name "notes2" -force
Stop-Process -name "nsd" -force
}
posted
28/01/10
By Fredrik Wall
I’m on my way to be a iPhone owner.
But I don’t really knows if I like the iPad or not.
It’s to large to use on the bus and at home I need my
computer.
But It’s a cool geek toy anyway
http://www.apple.com/ipad/
Technorati Tags:
Geek,
News,
iPad
posted
28/01/10
By Fredrik Wall
Working with a login script for my lab active directory.
100% PowerShell using .NET classes and WMI.
This is VBScript login scripts with HTA on steroids
The GUI part was done in 10-15 min with Primal Forms.
posted
25/01/10
By Fredrik "DXter" Jonsson
Today I had to troubleshoot certutil. Not a big deal, it was about a removal of a certificate from a smartcard. Usually this takes about 5-15 seconds depending on the method you are using, but today when I helped my boss Mats with his smartcard, certutil didn’t work as expected, and I had to troubleshoot for several minutes.
The funny thing was that the command I have been using MANY times, didn’t work. The command to remove a certificate from a smartcard that is using the Base CSP is certutil -delkey -csp "Microsoft Base Smart Card Crypto Provider" "id" (replace “id” with your key container).
However, depending on if this command was copied from a chat/e-mail or not, the output of the command differed. Kind of funny actually.
certutil -delkey -csp "Microsoft Base Smart Card Crypto Provider" "id" working (but canceled by me).
certutil -delkey -csp "Microsoft Base Smart Card Crypto Provider" "id" not working (and says that it has too many arguments).
I copied both text strings to notepad and couldn’t see any difference.
My dear friend, the developer Mattias Åslund, mentioned to me later that Microsoft Word could do these things sometimes and do formatting changes that are “hidden” for the cmd console, so I decided to try to copy the text strings into Word.
Just as expected! Word revealed the hidden formatting of the lower line!
After a replacement of the – manually in the cmd console, everything worked fine and my boss could remove his certificate again.
Perhaps I should do like my dear friend Chrisse says and use certutil /delkey /csp "Microsoft Base Smart Card Crypto Provider" "id" instead, to be able to avoid these issues in the future?
// Fredrik “DXter” Jonsson
posted
24/01/10
By Fredrik Wall
When working with MDT folders you want to sort
the folders by name to make It look better.
This is not a task you do in the Workbench.
I found a great script for this by Michael Niehaus
at Microsoft. It can be found here.
It will sort every folder in the Deployment Share structure.
The script will sort the structure by making a _TEMP_
folder and move the folder there and then move them
back sorted one by one.
You can do this manually as well in the Workbench
but It’s a big job then.
In my folder structure the comments will be deleted
this way.
If I move (copy, paste, delete old folder) a folder
in the Workbench I will get the same result.
The property “Enable this folder” seems to work just fine
with moving folders.
Is this a known bug/feature?
I will write a script that fixes this for me later on next
week. Have to do another script first
posted
24/01/10
By Fredrik Wall
One nice thing with MDT 2010 is the possibility to
make folders in the Application folder.
I like a nice structure of things and with PowerShell
I can make my structure for MDT 2010 Applications,
Operating Systems and Drivers in no time.
cls
$MDTName = "MyMDT"
$MDTServer = "\\padc01"
$MDTApplications = "Antivirus", "Browser", "Office", "Twitter", "Security", "Server"
Add-PSSnapIn Microsoft.BDD.PSSnapIn
New-PSDrive -Name $MDTName -PSProvider MDTProvider -Root $MDTServer\DeploymentShare$
foreach ($MDTApp in $MDTApplications) {
New-Item -path "$MDTName:\Applications" -enable "True" -Name "$MDTApp Applications"
-Comments "$MDTApp Applications" -ItemType "folder" -Verbose -ErrorAction SilentlyContinue
}
9 lines of code can make 50 folders in 50 sec 
And you can make it in less lines!
Technorati Tags:
PowerShell,
MDT 2010
posted
23/01/10
By Fredrik Wall
This is a follow up on my last blog post about
using PowerShell from a Windows 7 machine
against a MDT 2010 solution (server).
It’s a how to use the Workbench on the
Windows 7 machine to manage a MDT 2010 solution
on a remote server.
First of all you need to go in to the Workbench
and the components section.
Then select Windows Automation Installation Kit x86 or x64
and download it by push the download button. It’s a large
file ~1 GB.
And when It is downloaded, select it again (it’s now under the downloaded section) and push the install button.
Now choose Open Deployment Share on the right side of the workbench.
The path should be like \\server\deploymentshare$
Now you got the same view on your Windows 7 machine
as on the MDT 2010 server.
I love this
But I don’t love the WAIK part, 1 GB of installation to be able to
do remote administration is not so good!
Technorati Tags:
MDT 2010,
Deployment
posted
23/01/10
By Fredrik Wall
I like to do everything from my Windows 7 machine.
One administration point with all of my scripts.
So I wanted to access my MDT 2010 server thru PowerShell
from It too.
As default this will not go.
You need to Add-PSSnapIn
Add-PSSnapIn Microsoft.BDD.PSSnapIn
And you will not have that on your Windows 7 machine
out of the box. But It’s not that hard to fix.
Just install MDT 2010 on the Windows 7 machine as well.
This is a 10 MB installation file only
No problem!

And now we can access our MDT solution remote with
PowerShell.
This is a small test script
cls
Add-PSSnapIn Microsoft.BDD.PSSnapIn
New-PSDrive -Name MyMDT -PSProvider MDTProvider -Root \\padc01\DeploymentShare$
cd MyMDT:
dir
And the output will be something like
WARNING: column "CurrentLocation" does not fit into the display and was removed.
Name Used (GB) Free (GB) Provider Root
—- ——— ——— ——– —-
MyMDT MDTProvider \\padc01\DeploymentShare$
Name : Applications
Name : Operating Systems
Name : Out-of-Box Drivers
Name : Packages
Name : Task Sequences
Name : Selection Profiles
Name : Linked Deployment Shares
Name : Media
posted
23/01/10
By Fredrik Wall
My very first step was to add the Microsoft.BDD.PSSnapIn.
Add-PSSnapin Microsoft.BDD.PSSnapin
And then I could make a new PSDrive
New-PSDrive -Name MyMDT -PSProvider MDTProvider -Root \\psdc01\DeploymentShare$
When I have a PSDrive I can access it thru
cd MyMDT:
dir
Name
—-
Applications
Operating Systems
Out-of-Box Drivers
Packages
Task Sequences
Selection Profiles
Linked Deployment Shares
Media
This means that I can access my MDT solution and do
everything with PowerShell. I’m in love!
But It will get better.
To learn much and fast about how to do tasks with PowerShell you can
use the MDT Workbench.
A simple and nice task is to create a folder for every Office application
that you want to add.
With the Workbench we do like this.
On the last picture, on the right, just above finish
you got “View Script”.
This will open Notepad with a full .ps1 script
with the task that you did in the workbench.
This is nice!
Thanks DXter for the heads up on this.
More on MDT 2010 and PowerShell will come soon.
Technorati Tags:
MDT 2010,
PowerShell
posted
23/01/10
By Fredrik "DXter" Jonsson
In my post Smooth root certificate deployment for mobile devices I explained how to distribute your root certificates as .cab files for mobile devices. This post will go through how we distribute root certificates as .exe files for external users and computers.
We start by creating a folder. We call it cer_as_exe and here we put our root certificate that we want to distribute and a small installation script.
Our installation script is not that big.
@echo off
certutil -addstore -f -enterprise -user root %tmp%\root_ca.cer > NUL
del /F %tmp%\root_ca.cer > NUL
del /F %tmp%\install.bat > NUL
This is a very small script that installs a root certificate from a file to the root certificate container in the certificate store for the computer and the user. Then it does a quick cleanup by removing the original root certificate file and installation script that is unpacked in to the %tmp% folder by our installer. Now we need to pack everything as an .exe file that will install our root certificate automatically.
We choose to add our files to archive (using WinRAR).
We select to create a self extracting archive.
We put the following options for the installer under the comment tab.
Path=%tmp%
SavePath
Setup=%tmp%\install.bat
Silent=1
Overwrite=1
We basically tell the installer to extract the files to the users temp path (and overwrite existing files if necessary) and then execute our installation script that does the import as silent as possible. If we want to do modifications such as using a custom icon, etc, we can specify this in “SFX options” under the Advanced tab.
Press OK and now we have a small .exe file that will do the import completely unattended.
Please remember that since the script does not only add the root certificate to our user, but also to our computers certificate store (a system wide change), administrative privileges are required to be able to run this file. You don’t want to add the certificate to the computer store? Then just remove the –enterprise switch from the installation script and it will import the root certificate only the the users certificate store without the need for any elevation at all.
// Fredrik “DXter” Jonsson