In the spirit of "tidying things up," and pushing out nearly-there projects, I turned my attention to http://www.codeplex.com/PSMobile. I have my fingers in way too many pies I think and I'm just not finding enough time to get things finished off - but enough is enough. I am trying to clear my plate, and this is fruit number #2 of that attempt at self-correction. I have some other important out of band work that I need to complete, but I find I cannot concentrate on that until these personal projects that have been niggling me for ages are dealt with. Anyway, lets dispel a couple of questions with a screenshot:
Requirements
- ActiveSync 4.2 or higher (or Windows Mobile Device Centre 6.0+ on Vista) Download
- A Windows Mobile device (PocketPC/SmartPhone 2002, 2003, 2003SE, Windows Mobile 5, 6 or 6.1)
- Windows PowerShell 1.0 or 2.0 (CTP) Download
Features
-
Copy, Move, Delete items between folders on your device (including Storage Card) with standard PowerShell Cmdlets
-
Move/Copy files to/from your device and your desktop with ConvertTo-WMFile and ConvertFrom-WMFile
-
Get device information and manipulate and explore the registry with a rich device object returned from Get-WMDevice
-
Invoke-Item against remote items to or execute or trigger their associated applications
-
Invoke-Item with -Local switch to attempt to execute a remote file in the context of your local desktop (e.g. office docs or images/videos)
-
New "Mode" attributes specific to Windows Mobile file attributes: (I)nRom, Rom(M)odule
-
File/Folder objects' attributes can be modified with .Attributes properties just like FileInfos etc.
-
Tab completion with MoW's PowerTab
Download
File Manipulation
A picture's worth a thousand words.
Cmdlets and Definitions
Here's a table of the syntax for the included Cmdlets.
| Cmdlet |
Definition |
WhatIf / Confirm |
| ConvertFrom-WMFile * |
[-Path] [-Destination] [-Force] [-Verbose] |
Yes |
| |
[-LiteralPath] [-Destination] [-Force] [-Verbose] |
Yes |
| ConvertTo-WMFile * |
[-Path] [-Destination] [-Force] [-Verbose] |
Yes |
| |
[-LiteralPath] [-Destination] [-Force] [-Verbose] |
Yes |
| Get-WMDeviceInfo |
[-Verbose] |
|
| Get-WMMemoryInfo |
[-Verbose] |
|
| Get-WMStoreInfo |
[-Verbose] |
|
| Start-WMActiveSync |
[-Verbose] |
|
| Stop-WMActiveSync |
[-Verbose] |
|
| Start-WMProcess |
[-LiteralPath] [[-Arguments] ] [-Verbose] |
|
| Get-WMDevice |
[-Verbose] |
|
* These Cmdlets that accept a path will bind to pipeline input via PSPath property name.
If you've got any problems, suggestions or ideas, please post into the discussions board on the web site. Have fun!