I started a little project today, and I figured I could bang it out in PowerShell. I want to take all .img (DVD image) files and mount them as virtual drives with a program called "DAEMON Tools". I thought this would be easy to figure out.

Here was my first step. I came up with the following code within seconds. I can now iterate through all .img files in a directory.

[code]
$files = get-childitem -filter *.img
foreach ($file in $files)
{
  echo $file.FullName
}
[/code]

Now, to call the DAEMON Tools executable and pass the file name as a command line argument. The following line works in cmd.exe. I have to use quotes, because the path has a space.

"C:\Program Files\DAEMON Tools\daemon.exe" -mount 0,myimage.img

However, this does not work in PowerShell. It took me a quite a while to figure out how to run an exe with a long filename, but I finally found it on some random blog post. So, this is what I have now.

[code]
$files = get-childitem -filter *.img
foreach ($file in $files)
{
   &'C:\Program Files\DAEMON Tools\daemon.exe' -mount 0`,`"myimage.img`"
}
[/code]

Now I need to know how to use the $file variable as a command line argument for the executable. I couldn't find anything related to this stuff in the documentation, in the wiki, or through the other various links google gave me.

Why is this information so difficult to find? All the web sites I've seen contain the same basic MONAD tutorials. There is no mention of how to run a plain executable other than stating "Just type it in."

Sorry about the rant. I'm just frustrated. This stuff should have taken a few minutes to figure out.

Can anyone help me out here?