<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DEEAQX87fip7ImA9WxNUF0w.&quot;"><id>tag:blogger.com,1999:blog-25573579</id><updated>2009-11-09T05:44:00.106+08:00</updated><title>The Prodigal Son on 26th G Street</title><subtitle type="html">&lt;br&gt;&lt;br&gt;All Rights Reserved.
Est 1978, Proud Noypi 4Lyf - 3 Stars and the Sun.
&lt;br&gt;
Prodigal Son's digital scribbles, thoughts and code snippets.
&lt;br&gt;&lt;br&gt;26thGstreet (C) Copyright Unregistered Trade Mark.
&lt;br&gt;Gimoterapee (C) Copyright Unregistered Trade Mark.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://26thgstreet.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/TheProdigalSon" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;AkcDSXk8eCp7ImA9WxRbGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-7204641976763651717</id><published>2008-05-24T02:42:00.004+08:00</published><updated>2008-12-09T23:54:38.770+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-09T23:54:38.770+08:00</app:edited><title>HowTo: (OSXp) Turn your XP to OSX</title><content type="html">I got tired of the boring XP graphics so i worked on transforming my machine to OSX style desktop.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What you need:&lt;/div&gt;&lt;div&gt;1. Download and install &lt;a href="http://rocketdock.com/download"&gt;Rocket Dock&lt;/a&gt;&lt;/div&gt;&lt;div&gt;    1.1 Configure the Dock and Icon Settings&lt;/div&gt;&lt;div&gt;    1.2 Set to Run on startup&lt;/div&gt;&lt;div&gt;2. Hide the XP taskbar (You can set it  to auto hide and lock)&lt;/div&gt;&lt;div&gt;3. Disable the Desktop&lt;/div&gt;&lt;div&gt;     3.1 Browse the regkey:  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDesktop (Create the key if not found - DWORD) and set the value to 1&lt;/div&gt;&lt;div&gt;     3.2 Log off and relogin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Optional:&lt;/div&gt;&lt;div&gt;Get an OSX wallpaper, install Safari and iTunes for more OSX feel!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sample Snapshots of my new OSXp:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_W1MKLB0v95w/SDcRWgtYf4I/AAAAAAAAAII/TGo3OPjJjSo/s1600-h/OSXP.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_W1MKLB0v95w/SDcRWgtYf4I/AAAAAAAAAII/TGo3OPjJjSo/s400/OSXP.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5203646972884975490" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_W1MKLB0v95w/SDcRyAtYf5I/AAAAAAAAAIQ/HGWduEMYrm8/s1600-h/OsXp_Samp.png"&gt;&lt;img src="http://2.bp.blogspot.com/_W1MKLB0v95w/SDcRyAtYf5I/AAAAAAAAAIQ/HGWduEMYrm8/s400/OsXp_Samp.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5203647445331378066" style="cursor: pointer; " /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If at first you fail, call it version 1.0&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-7204641976763651717?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/tsi29HDGIHE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/7204641976763651717/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=7204641976763651717&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7204641976763651717?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7204641976763651717?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/tsi29HDGIHE/howto-osxp-turn-your-xp-to-osx.html" title="HowTo: (OSXp) Turn your XP to OSX" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_W1MKLB0v95w/SDcRWgtYf4I/AAAAAAAAAII/TGo3OPjJjSo/s72-c/OSXP.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/05/howto-osxp-turn-your-xp-to-osx.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcBQH87eCp7ImA9WxZUF0s.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-5363898507673805899</id><published>2008-04-10T01:57:00.002+08:00</published><updated>2008-04-10T02:00:51.100+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-10T02:00:51.100+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Mods" /><category scheme="http://www.blogger.com/atom/ns#" term="iPod Touch" /><category scheme="http://www.blogger.com/atom/ns#" term="iGopher" /><category scheme="http://www.blogger.com/atom/ns#" term="iPhone Browser" /><title>PimPod2DaMax</title><content type="html">&lt;p&gt;Just to share my latest setup, as promised!&lt;/p&gt;  &lt;p&gt;Note: No Customize or Summerboard themes were used for this Mod. These are just all simple icon replacements using iPhone Browser. &lt;em&gt;(Read my previous blogs for instructions)&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Home Screen (Transparent Dock) with Kat Von D:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.google.com/gimoterapee/R_0DQ5OdNSI/AAAAAAAAAGY/QDhfhh-KH4w/snap_012731%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012731" src="http://lh5.google.com/gimoterapee/R_0DSpOdNTI/AAAAAAAAAGg/4RVFxXoGxoA/snap_012731_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;iTouchApps (Grouped by Category.App), activated by the first Icon on the Dock:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/gimoterapee/R_0DUZOdNUI/AAAAAAAAAGo/f9uTCgXeIQc/snap_012749%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012749" src="http://lh5.google.com/gimoterapee/R_0DVpOdNVI/AAAAAAAAAGw/ouhbzw02Mno/snap_012749_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;gPod (Grouped by Category.App), activated by gPod icon under iTouchApps:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/gimoterapee/R_0DXpOdNWI/AAAAAAAAAG4/SYcYJ67K8U4/snap_012907%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012907" src="http://lh6.google.com/gimoterapee/R_0DY5OdNXI/AAAAAAAAAHA/pTJSfO_lP-8/snap_012907_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;iGamez (Grouped by Category.App), activated by the iGamez under iTouchApps:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.google.com/gimoterapee/R_0Da5OdNYI/AAAAAAAAAHI/YdnLosDM7jc/snap_012803%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012803" src="http://lh4.google.com/gimoterapee/R_0DcZOdNZI/AAAAAAAAAHQ/4pHzhxhodHk/snap_012803_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;iToolz (Grouped by Category.App), activated by the iToolz icon under iTouchApps:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.google.com/gimoterapee/R_0Dd5OdNaI/AAAAAAAAAHY/tyzWxahFiJY/snap_012831%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012831" src="http://lh3.google.com/gimoterapee/R_0DgJOdNbI/AAAAAAAAAHg/xoBuJCdqtqM/snap_012831_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Swipe to scroll to the next collection in iToolz category:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/gimoterapee/R_0DiZOdNcI/AAAAAAAAAHo/WqWfeWdpjdI/snap_012837%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012837" src="http://lh6.google.com/gimoterapee/R_0Dj5OdNdI/AAAAAAAAAHw/ULoh3PaM4sA/snap_012837_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Pimped Weather Theme. Ain't using customize or summerboard, just replaced the default background via iPhone Browser (",)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.google.com/gimoterapee/R_0DlJOdNeI/AAAAAAAAAH4/JKTMS3VwCP0/snap_012930%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_012930" src="http://lh3.google.com/gimoterapee/R_0DnJOdNfI/AAAAAAAAAIA/Uq78RZvlok4/snap_012930_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Special thanks to the creators of Punisher, Bright Acrylic, Vista Ultimate, Divinity Themes for the icons and to Designer Set Customize Themes for the background images on Weather App and to Wallpaper.App and wallpaper contributors &lt;em&gt;(if you install Wallpaper.App, please share your wallpaper, it's better to give than to receive)&lt;/em&gt; for the Categories  background images and finally to the creator of ScreenShot.App! (",)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-5363898507673805899?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/2tQ8sYs2__k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/5363898507673805899/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=5363898507673805899&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/5363898507673805899?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/5363898507673805899?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/2tQ8sYs2__k/pimpod2damax.html" title="PimPod2DaMax" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/04/pimpod2damax.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU4CRX4_eyp7ImA9WxZUF0s.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-350200377181839021</id><published>2008-04-10T01:35:00.002+08:00</published><updated>2008-04-10T01:59:24.043+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-10T01:59:24.043+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Mods" /><category scheme="http://www.blogger.com/atom/ns#" term="iPod Touch" /><category scheme="http://www.blogger.com/atom/ns#" term="iGopher" /><category scheme="http://www.blogger.com/atom/ns#" term="iPhone Browser" /><title>NES Emulator on iPod Touch</title><content type="html">&lt;p&gt;&lt;a href="http://lh6.google.com/gimoterapee/R_z9-JOdNEI/AAAAAAAAAEo/JrIQ5FE6zcI/NES_icon2.png"&gt;&lt;img style="border-width: 0px;" alt="NES_icon" src="http://lh3.google.com/gimoterapee/R_z9_ZOdNFI/AAAAAAAAAEw/1t_znMlPKpA/NES_icon_thumb.png" border="0" height="64" width="63" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;1. Using iGopher, create the local script on your PC and Export them to your iPod.&lt;/p&gt;  &lt;p&gt;2. Launch Installer.App and install the NES emulator.&lt;/p&gt;  &lt;p&gt;3. Restart your iPod.&lt;/p&gt;  &lt;p&gt;4. Create the  NES folder in /var/mobile/Media/ROMS/NES. You can use any of the following:&lt;/p&gt;  &lt;p&gt;a. SSH&lt;/p&gt;  &lt;p&gt;b. Term VT100&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.google.com/gimoterapee/R_z-BJOdNGI/AAAAAAAAAE4/CjtJRWBO6nk/snap_175907%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_175907" src="http://lh4.google.com/gimoterapee/R_z-CpOdNHI/AAAAAAAAAFA/q06GTnQz8Z0/snap_175907_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;c. iPhone Browser&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/gimoterapee/R_z-E5OdNII/AAAAAAAAAFI/o1a8MqIN50U/ROMs%5B2%5D.png"&gt;&lt;img style="border: 0px none ;" alt="ROMs" src="http://lh4.google.com/gimoterapee/R_z-GpOdNJI/AAAAAAAAAFQ/y9XmAvIVydE/ROMs_thumb.png" border="0" height="176" width="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;d. MobileFind.App \ Find.App&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.google.com/gimoterapee/R_z-IZOdNKI/AAAAAAAAAFY/IUFIntc6JH4/snap_180007%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_180007" src="http://lh5.google.com/gimoterapee/R_z-J5OdNLI/AAAAAAAAAFg/J8RLxWcu2y4/snap_180007_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;5. Upload the ROMs in the folder that you've just created. (Using any of the following method above)&lt;/p&gt;  &lt;p&gt;6. Launch NES.App, browse your ROMs and...&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/gimoterapee/R_z-LpOdNMI/AAAAAAAAAFo/kCgBZ9vPjNc/snap_180145%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_180145" src="http://lh6.google.com/gimoterapee/R_z-NJOdNNI/AAAAAAAAAFw/R2BcuFUiSgk/snap_180145_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;7. Enjoy the nostalgic games! Oh yeah, tilt to play in wide screen mode!&lt;/p&gt;  &lt;p&gt;Normal Mode (Full Screen OFF):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/gimoterapee/R_z-OpOdNOI/AAAAAAAAAF4/KduZgWo2GEU/snap_180209%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_180209" src="http://lh6.google.com/gimoterapee/R_z-QJOdNPI/AAAAAAAAAGA/nbP1iaH4lyo/snap_180209_thumb.jpg" border="0" height="244" width="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Wide Screen Mode (Full Screen OFF): &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.google.com/gimoterapee/R_z-SZOdNQI/AAAAAAAAAGI/ReIrdiwl9Ew/snap_180219%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="snap_180219" src="http://lh5.google.com/gimoterapee/R_z-T5OdNRI/AAAAAAAAAGQ/dEsCgDRbHjk/snap_180219_thumb.jpg" border="0" height="164" width="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Note: NES ROMs are Copyrighted! Do the right thing!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-350200377181839021?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/pmjiNitbPmc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/350200377181839021/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=350200377181839021&amp;isPopup=true" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/350200377181839021?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/350200377181839021?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/pmjiNitbPmc/nes-emulator-on-ipod-touch.html" title="NES Emulator on iPod Touch" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/04/nes-emulator-on-ipod-touch.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcDSH45fyp7ImA9WxRbGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-177951994656513292</id><published>2008-04-09T22:37:00.005+08:00</published><updated>2008-12-09T23:54:39.027+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-09T23:54:39.027+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Mods" /><category scheme="http://www.blogger.com/atom/ns#" term="iPod Touch" /><category scheme="http://www.blogger.com/atom/ns#" term="iPhone Browser" /><title>Pimp my iPod using iPhone Browser (USB Mod)</title><content type="html">&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It's been a while since I posted again, guess I was too busy with my iPod...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks to iPhone Browser, now who needs WiFi, SSH, Customize, Summerboard and Installer to install apps and fully modify your Pod?!?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You've got a USB cable, then you can do it all...&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;First download the &lt;a href="http://code.google.com/p/iphonebrowser/"&gt;iPhone Browser&lt;/a&gt; (Windows), install it, plug your iPod (you don't even need to run iTunes to have the Pod detected by the browser). &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_W1MKLB0v95w/R_zY5F4BN6I/AAAAAAAAAD0/EwT66qvTAks/s1600-h/iPhoneBrowser.PNG"&gt;&lt;img src="http://4.bp.blogspot.com/_W1MKLB0v95w/R_zY5F4BN6I/AAAAAAAAAD0/EwT66qvTAks/s400/iPhoneBrowser.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5187259346165249954" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then browse the content of your iPod, drag files in to the GUI browser to transfer files to your iPod. Removal of files from the iPod is safe (iPhone Browser will back up the files in your local HDD before deletion... COOL)!&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Replace all the default icons from /Application/AppName.App/icon.png with whatever you want. You can backup your current Summerboard Themes Icons by copying out /var/mobile/Library/Summerboard/Themes/Theme_Name_Folder.... so you can use any icons from any themes on your Pod (mix and match!).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To install the Application, use &lt;a href="http://26thgstreet.blogspot.com/2008/03/ipod-touch-full-mod-ziphone-and-igopher.html"&gt;iGopher (instructions from my previous post) &lt;/a&gt;to download the packages to your PC, then unpack them to your iPod using iPhone Browser! Simple!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I've got PSX4All installed with NBA Live 2003 ROM, NES Emulator with tons of ROMs as well... getting a bit lazy to post the screen shots and additional instructions for the emulator installation and config... will do it next time... watch out for it!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If at first you fail, call it version 1.0&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-177951994656513292?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/Z8BNDHvQOMs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/177951994656513292/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=177951994656513292&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/177951994656513292?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/177951994656513292?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/Z8BNDHvQOMs/pimp-my-ipod-using-iphone-browser-usb.html" title="Pimp my iPod using iPhone Browser (USB Mod)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_W1MKLB0v95w/R_zY5F4BN6I/AAAAAAAAAD0/EwT66qvTAks/s72-c/iPhoneBrowser.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/04/pimp-my-ipod-using-iphone-browser-usb.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcDSHw6fyp7ImA9WxRbGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-1727390873018729745</id><published>2008-03-26T00:27:00.003+08:00</published><updated>2008-12-09T23:54:39.217+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-09T23:54:39.217+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Mods" /><category scheme="http://www.blogger.com/atom/ns#" term="iPod Touch" /><title>iPod Touch Full Mod (ZiPhone and iGopher)</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_W1MKLB0v95w/R-kpE14BN5I/AAAAAAAAADs/TMREwv8b2oQ/s1600-h/snap_141053.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_W1MKLB0v95w/R-kpE14BN5I/AAAAAAAAADs/TMREwv8b2oQ/s400/snap_141053.jpg" alt="" id="BLOGGER_PHOTO_ID_5181718009424721810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Just want to share setup (",)&lt;br /&gt;&lt;br /&gt;I have jailbroken my iPod Touch 8GB with ZiPhone and have restored to 1.1.4 Firmware due to technical problems, errr... more of a user fault...&lt;br /&gt;&lt;br /&gt;Errors Committed:&lt;br /&gt;1. Changed the default root password, result: Springboard Infinite Loop!&lt;br /&gt;&lt;br /&gt;2. Installed Poof and accidentally hidden all Icons, result: Luckily I have BossPrefs installed and set "SSH always on reboot". Had to SSH to my gPod and&lt;br /&gt;&lt;br /&gt;launch Categories.app (requires unix skills here ={D).&lt;br /&gt;&lt;br /&gt;Now I've got  it setup  that it can pass as a phone and unmatched as a  workstation.&lt;br /&gt;&lt;br /&gt;Note: If you're a new user of iPhone\iPod and thinking of jailbreaking it, you don't have to sweat anymore. Follow the  prodigal son's steps for the easiest&lt;br /&gt;&lt;br /&gt;MOD!&lt;br /&gt;&lt;br /&gt;1. Upgrade your Pod to 1.1.4 (MailApp, StocksApp, Wiggle)&lt;br /&gt;&lt;br /&gt;2. Install ZiPhone and connect your Pod to PC with iTunes (atleast v7) running.&lt;br /&gt;&lt;br /&gt;3. Use the jailbreak option, wait for the entire process to complete and it will reboot automatically. After the reboot, Installer.App will be available.&lt;br /&gt;&lt;br /&gt;This will include all the community sources available in the default package. You will need WiFi access to refresh the sources and install the apps. (But&lt;br /&gt;&lt;br /&gt;wait... just keep on reading and you will learn that you do not need WiFi access to install Apps on your Pod ={D , just keep reading...)&lt;br /&gt;&lt;br /&gt;4. Launch Installer.App, Go straight to Sources and touch Refresh to update the packages, this might take a while, so go for a fag or coffee break... Once&lt;br /&gt;&lt;br /&gt;the refresh is completed, touch Install and you may start browsing for packages to install 3rd party apps. Make sure to check the updates page, it might&lt;br /&gt;&lt;br /&gt;require you to update Installer.App... If you find an update package, install the update and restart Installer.App... Then&lt;br /&gt;&lt;br /&gt;5. Install the packages in this order (Don't skip anything, trust me&lt;br /&gt;you need all of them):&lt;br /&gt;-BSD Subsystem 2.1&lt;br /&gt;-BSD Subsystem 2.0 Termfix,&lt;br /&gt;&lt;br /&gt;-SUID Libfix&lt;br /&gt;-Community Sources&lt;br /&gt;-OpenSSH&lt;br /&gt;-Term-VT100&lt;br /&gt;-BoosPrefs (Set SSH on Reboot and Wifi On)&lt;br /&gt;-BossTool&lt;br /&gt;&lt;br /&gt;Important Note, Installer.App is unable to detect the larger partition in the Pod... Yeah there are 2 partitions in your Pod...&lt;br /&gt;Smaller Partition has 300MB (allocated for the OS and Apps) and the rest are allocated to the 2nd partition (allocated for Pics\Vids\Music..etc)...&lt;br /&gt;If you keep installing applications, you will run out of disk space on the smaller partition and Installer.App will no longer allow you to install...&lt;br /&gt;&lt;br /&gt;Luckily, at this point, you already have BossTool installed in your Pod... you can use it to move the Apps\Ringtone\Fonts to the bigger partition...&lt;br /&gt;Technically, it's Nix MV and LN for dummies... meaning... the tool will move the files to the bigger partition and create a link to the folder...&lt;br /&gt;Read on More Info in BossTool and be very careful, if the first files you moved (Fonts) did not make any file size increase in smaller partition...&lt;br /&gt;Do not proceed in moving the apps... skip this and move on to the next step...&lt;br /&gt;&lt;br /&gt;Or If Once that's done with no errors...&lt;br /&gt;&lt;br /&gt;This part will tweak your Pod to create links and folders in the larger partion... WHY?!?&lt;br /&gt;So that all the installations will be placed in the larger partition... MEANING?!?&lt;br /&gt;YOU CAN INSTALL AS MUCH 3rd PARTY APPS AS YOU WANT!!! upto FULL 7GB... LOL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can SSH into Your Ipod using (password is "alpine", first login takes 30-45 sec = ignore 15sec msg) or Launch Terminal VT100&lt;br /&gt;1. Go to /private/var/root/&lt;br /&gt;2. Create a new folder called "Media" (without "")&lt;br /&gt;3. Run the following commands, hitting enter after each line:&lt;br /&gt;cp -R /private/var/root/Media /private/var/mobile/&lt;br /&gt;rm -r /private/var/root/Media&lt;br /&gt;ln -s /private/var/mobile/Media /private/var/root/Media&lt;br /&gt;cp -R /private/var/root/Library /private/var/mobile/&lt;br /&gt;rm -r /private/var/root/Library&lt;br /&gt;ln -s /private/var/mobile/Library /private/var/root/Library&lt;br /&gt;&lt;br /&gt;Restart your Pod.&lt;br /&gt;&lt;br /&gt;Now you can install till your Pod is full of Games\Apps\Utilities and such using Installer.App... Ooops.. You need WiFi to download and install packages...&lt;br /&gt;&lt;br /&gt;Ahhhhh... That sucks...&lt;br /&gt;&lt;br /&gt;Don't fret on it!!!&lt;br /&gt;&lt;br /&gt;As promised... You can install packages without WiFi... Yeah you can via USB cable!!!&lt;br /&gt;Catch? You still need Internet access on your PC... but trust me this is so much easier than downloading and installing apps using WiFi and very slow net...&lt;br /&gt;&lt;br /&gt;New Steps:&lt;br /&gt;1. Install the latest version of iGopher on your PC (you can get em here: &lt;a set="yes" linkindex="20" href="http://code.google.com/p/igopher/"&gt;http://code.google.com/p/igopher/&lt;/a&gt;)&lt;br /&gt;2. Extract it in any folder (Alpha version doesn't have any installer yet... and yeah read on the requirements... .Net runtime and such)&lt;br /&gt;3. Launch Gopher.exe (your iTunes running and Pod plugged in)&lt;br /&gt; It will not be able to detect the Pod yet as the Installer.App do not have access to system files...&lt;br /&gt; Fix is here (well this will be the last time you will need WiFi to install Apps... promise!!!)&lt;br /&gt;3.1 Add &lt;a linkindex="21" href="http://i.unlock.no/"&gt;http://i.unlock.no&lt;/a&gt; in your sources (Launch Installer.App, touch sources, touch edit, touch add then keyin the URL)&lt;br /&gt;3.2 Refresh your Sources then browse under install then search for "ZiPhone iBrickr Fix", you need to restart ur Pod after installing it.&lt;br /&gt;3.3 iGopher should have already detected your Pod&lt;br /&gt;3.4 You may need to update the resources in Gopher (in the folder where you extracted iGopher, open AllSources.txt and update it with known Repos)&lt;br /&gt;3.5 After refreshing the Sources in iGopher. you can browse for all Apps and installed as much to your heart's desire...&lt;br /&gt;&lt;br /&gt;Enjoy It!!!&lt;br /&gt;&lt;br /&gt;If you need help, mail me: &lt;a href="mailto:ezmuthfinguz@gmail.com"&gt;Smooth Fingerz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Check out &lt;a style="color: rgb(153, 153, 255);" href="http://dprodigalson.multiply.com/photos/album/13/iPod_Touch_De_Mavie_Screen_Caps"&gt; screen caps&lt;/a&gt;&lt;span style="color: rgb(153, 153, 255);"&gt; &lt;/span&gt;of my iPod Touch setup.&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-1727390873018729745?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/J6KSHBgU4Jg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/1727390873018729745/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=1727390873018729745&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1727390873018729745?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1727390873018729745?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/J6KSHBgU4Jg/ipod-touch-full-mod-ziphone-and-igopher.html" title="iPod Touch Full Mod (ZiPhone and iGopher)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_W1MKLB0v95w/R-kpE14BN5I/AAAAAAAAADs/TMREwv8b2oQ/s72-c/snap_141053.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/03/ipod-touch-full-mod-ziphone-and-igopher.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08FQnkyeyp7ImA9WxZQEE0.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-5072978310446319828</id><published>2008-02-14T23:00:00.004+08:00</published><updated>2008-02-14T23:10:13.793+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-14T23:10:13.793+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Outlook" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="macro" /><title>Outlook: Move Items to Folder (with GUI folder list and not inputbox)</title><content type="html">I was searching for a Macro online for Outlook mail items moved to different folders.&lt;br /&gt;&lt;br /&gt;Have seen few codes that performs the same but with this code I used the GUI folder listing instead of prompting for an inputbox to avoid errors as most users are not aware of the Folder paths.&lt;br /&gt;&lt;br /&gt;I submitted the code to OutlookCodeDotCom: &lt;a href="http://www.outlookcode.com/codedetail.aspx?id=1805"&gt;Moving mail items to specified folder&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It has 30++ downloads so far... not bad!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.outlookcode.com/codedetail.aspx?id=1805"&gt;&lt;/a&gt;&lt;ol&gt;&lt;li&gt;Sub MoveMailToFolders()&lt;/li&gt;&lt;li&gt;    Dim objNS As Outlook.NameSpace&lt;/li&gt;&lt;li&gt;    Dim MyFolder As Outlook.MAPIFolder&lt;/li&gt;&lt;li&gt;    Dim objItem As Outlook.MailItem&lt;/li&gt;&lt;li&gt;    Dim ctr As Integer&lt;/li&gt;&lt;li&gt;    On Error Resume Next&lt;/li&gt;&lt;li&gt;     &lt;/li&gt;&lt;li&gt;    ctr = 0&lt;/li&gt;&lt;li&gt;    Set objNS = Application.GetNamespace("MAPI")&lt;/li&gt;&lt;li&gt;    Set MyFolder = objNS.PickFolder&lt;/li&gt;&lt;li&gt;        &lt;/li&gt;&lt;li&gt;    MsgBox "The selected mail item(s) will be moved to: " &amp;amp; vbCrLf &amp;amp; vbCrLf &amp;amp; _&lt;/li&gt;&lt;li&gt;           "Folder Path: " &amp;amp; MyFolder.FolderPath &amp;amp; vbCrLf &amp;amp; _&lt;/li&gt;&lt;li&gt;           "Folder Name: " &amp;amp; MyFolder.Name _&lt;/li&gt;&lt;li&gt;           , vbOKOnly + vbInformation, "Outlook Help"&lt;/li&gt;&lt;li&gt;           &lt;/li&gt;&lt;li&gt;    For Each objItem In Application.ActiveExplorer.Selection&lt;/li&gt;&lt;li&gt;        If MyFolder.DefaultItemType = olMailItem Then&lt;/li&gt;&lt;li&gt;            If objItem.Class = olMail Then&lt;/li&gt;&lt;li&gt;                ctr = ctr + 1&lt;/li&gt;&lt;li&gt;                objItem.Move MyFolder&lt;/li&gt;&lt;li&gt;            End If&lt;/li&gt;&lt;li&gt;        End If&lt;/li&gt;&lt;li&gt;    Next&lt;/li&gt;&lt;li&gt;    &lt;/li&gt;&lt;li&gt;    MsgBox "Moved: " &amp;amp; ctr &amp;amp; " mail item(s) to: " &amp;amp; MyFolder.Name, vbInformation, "Outlook Help"&lt;/li&gt;&lt;li&gt;    &lt;/li&gt;&lt;li&gt;    Set objNS = Nothing&lt;/li&gt;&lt;li&gt;    Set MyFolder = Nothing&lt;/li&gt;&lt;li&gt;End Sub&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Then using the Customize option on the toolbar, you can create a button for the Macro and assign a shortcut key to it!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-5072978310446319828?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/di1b4j6lG9U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/5072978310446319828/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=5072978310446319828&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/5072978310446319828?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/5072978310446319828?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/di1b4j6lG9U/outlook-move-items-to-folder-with-gui.html" title="Outlook: Move Items to Folder (with GUI folder list and not inputbox)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/02/outlook-move-items-to-folder-with-gui.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4CQ3Y8eCp7ImA9WxZSF00.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-1556954215377143458</id><published>2008-01-30T22:33:00.000+08:00</published><updated>2008-01-30T22:56:02.870+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-30T22:56:02.870+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="root\cimv2" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="root\wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="win32_performattedData_perfOS_System" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><title>Latest Project: Server Monitoring Using WMI</title><content type="html">&lt;span style="font-size:85%;"&gt;It was a while since my last post. Year ender is quite busy and the new year was as much.&lt;br /&gt;&lt;br /&gt;I've been working on a latest project for our team. I set up a monitoring server running WMI scripts against remote servers in intervals of 2 or 30mins (depending on the frequency of data required).&lt;br /&gt;&lt;br /&gt;Below are few simple snippets  I used in to collect remote data and pump it in an html template and send it via email to the team (if ever performance thresholds were exceeded).&lt;br /&gt;&lt;br /&gt;Code Snippets:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Sub DisplayErrorInfo&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    WScript.Echo "Error:      : " &amp;amp; Err&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    WScript.Echo "Error (hex) : &amp;amp;H" &amp;amp; Hex(Err)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    WScript.Echo "Source      : " &amp;amp; Err.Source&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    WScript.Echo "Description : " &amp;amp; Err.Description&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    Err.Clear&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;End Sub&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 255, 51);"&gt;#1 Bytes Converter Snippet (&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 255, 51);font-size:85%;" &gt;One of my favorite snippet, pretty handy!)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Function SetBytes(Bytes,fKB)  &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    If fKB=True then Bytes = Bytes * 1024 &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    If Bytes &gt;= 1073741824 Then &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        SetBytes = FormatNumber((Bytes / 1024 / 1024 / 1024),2,,-1,-1) &amp;amp; " GB" &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    ElseIf Bytes &gt;= 1048576 Then &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        SetBytes =  FormatNumber((Bytes / 1024 / 1024),2,,-1,-1) &amp;amp; " MB" &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    ElseIf Bytes &gt;= 1024 Then &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        SetBytes = FormatNumber((Bytes / 1024),2,,-1,-1) &amp;amp; " KB" &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    ElseIf Bytes &lt;&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        SetBytes = Bytes &amp;amp; " Bytes" &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    End If &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;End Function &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;#2 Get Available Memory on the server &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;strComputer = "."&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Set objWMIService = GetObject("winmgmts:\\" &amp;amp; strComputer &amp;amp; "\root\cimv2")&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Set colItems = objWMIService.ExecQuery _&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        ("Select * From Win32_PerfRawData_PerfOS_Memory")&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    For Each objItem in colItems&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        intValue = objItem.AvailableBytes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        Wscript.Echo "Available memory = " &amp;amp; SetBytes(intValue,false)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        Exit For&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    Next&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;&lt;br /&gt;Note: This requires cooking. If you you have no idea how that works then just use AvailableMBytes instead.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;#3 Get CPU Usage (%)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Function GetCPUProcUsg(svr)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;c = 0&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;strComputer = "."&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Set objWMIService = GetObject("winmgmts:\\" _&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    &amp;amp; strComputer &amp;amp; "\root\cimv2:Win32_PerfRawData_PerfOS_Processor.Name='_Total'")&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;If Err = 0 Then&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    While (True)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        N1 = objWMIService.PercentProcessorTime&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        D1 = objWMIService.TimeStamp_Sys100NS&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        Wscript.Sleep(1000)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        Set objWMIService2 = GetObject("winmgmts:\\" _&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;      &amp;amp; strComputer &amp;amp; "\root\cimv2:Win32_PerfRawData_PerfOS_Processor.Name='_Total'")&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        N2 = objWMIService2.PercentProcessorTime&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        D2 = objWMIService2.TimeStamp_Sys100NS&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;        PercentProcessorTime = (1 - ((N2 - N1)/(D2-D1)))*100&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;       Wscript.Echo "Processor Usage: " &amp;amp; Round(PercentProcessorTime,2) &amp;amp; "%"&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;         GetCPUProcUsg = Round(PercentProcessorTime,2) &amp;amp; "%"&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;         &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    Wend&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Else&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;    DisplayErrorInfo&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;End If&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Set objWMIService = nothing&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;Set objWMIService2 = nothing&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;End Function &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 255, 51);"&gt;#4 Get Available Disk Space&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;strComputer = "."&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;strUser = &lt;admin&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;strPass = &lt;password&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Set oWMI = objSWbemLocator.ConnectServer(strComputer, "root\cimv2", strUser, strPass)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Set colDisks = oWMI.InstancesOf("win32_PerfRawData_PerfDisk_LogicalDisk.Name") &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;For Each objDisk in colDisks&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    intBaseValue = objDisk.PercentFreeSpace_Base&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    dblActualFreeSpace = (100 * objDisk.PercentFreeSpace) / intBaseValue&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;    Wscript.Echo objDisk.Name &amp;amp; Int(dblActualFreeSpace)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;If at first you fail, call it version 1.0&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-1556954215377143458?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/ltF0oWOG5_w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/1556954215377143458/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=1556954215377143458&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1556954215377143458?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1556954215377143458?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/ltF0oWOG5_w/latest-project-server-monitoring-using.html" title="Latest Project: Server Monitoring Using WMI" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2008/01/latest-project-server-monitoring-using.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYCRH8_cCp7ImA9WB5aFkQ.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-81820134749013871</id><published>2007-09-13T22:23:00.000+08:00</published><updated>2007-09-13T22:36:05.148+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-09-13T22:36:05.148+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Scripting.FileSystemObject" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><title>HowTo: Enum Citrix Server License using LMSTAT</title><content type="html">Our PS4 server seems to fail to execute the license information scripts from Citrix.Com (Dependency on SDK).&lt;br /&gt;&lt;br /&gt;So instead of relying on it, I decided to develop a script using LMSTAT and a short vb script to parse the output file  and write it to a .CSV file for better viewing (Data Filtering and such...)&lt;br /&gt;&lt;br /&gt;First I piped the result of lmstat -a to a text file then I used the script below to parse the contents then write it to a .CSV file&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;style type="text/css"&gt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;Parse the source file (lmstat output file): srcfile&lt;br /&gt; &lt;ol class="code"&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Sub GetData(srcfile)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set f = fso.GetFile(srcfile)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Do While ts.AtEndOfStream &amp;lt;&amp;gt; True&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;readResults = Trim(UCase(ts.ReadLine))&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;If InStr(readResults, "/27000") Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;mps = split(readResults, Chr(32))&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;msg = mps(1) &amp; "," &amp;amp; mps(3) &amp;amp;amp; "," &amp; mps(4) &amp;amp;amp;amp; "," &amp; mps(5) &amp;amp; mps(6) &amp; mps(8) &amp;amp;amp;amp; " " &amp;  mps(9) &amp;amp;amp;amp; " " &amp;  mps(10)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WriteToCSV msg, license_out&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Loop&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;End Sub&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;Write to CSV function: oCsv(Output File), msg(parsed ReadLine results)&lt;br /&gt;&lt;style type="text/css"&gt;.code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;ol class="code"&gt;&lt;br /&gt; &lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;Function WriteToCSV(oCsv,msg)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;If Not fso.FileExists(oCsv) Then fso.CreateTextFile(oCsv)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;Set f = fso.GetFile(oCsv)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;Set ts = f.OpenAsTextStream(ForAppending, TristateUseDefault)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;ts.Write msg &amp; vbCrlf&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;msg = ""&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;ts.Close&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 204, 0);"&gt;&lt;code&gt;End Function&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-81820134749013871?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/o4Od_Bnf04Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/81820134749013871/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=81820134749013871&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/81820134749013871?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/81820134749013871?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/o4Od_Bnf04Q/howto-enum-citrix-server-license-using.html" title="HowTo: Enum Citrix Server License using LMSTAT" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/09/howto-enum-citrix-server-license-using.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0EMSX86fSp7ImA9WB5aFk0.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-6979670101871572326</id><published>2007-09-12T22:59:00.001+08:00</published><updated>2007-09-12T23:08:08.115+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-09-12T23:08:08.115+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="root\cimv2" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="root\wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="Win32_NTEventLogFile" /><title>Event Log</title><content type="html">Event Log Manipulations:&lt;br /&gt;&lt;br /&gt;1. Reading the Event Log&lt;br /&gt;2. Clearing the Event Log&lt;br /&gt;3. Creating backup of the Event Log&lt;br /&gt;&lt;br /&gt;Code Snippet #1:&lt;br /&gt;&lt;br /&gt;&lt;ol class="code"&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;strComputer = "."&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set objWMIService = GetObject("winmgmts:" _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "{impersonationLevel=impersonate}!\\" _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; strComputer &amp; "\root\cimv2")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set colLoggedEvents = objWMIService.ExecQuery _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;("Select * from Win32_NTLogEvent " _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; "Where Logfile = 'System'")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;For Each objEvent in colLoggedEvents&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Wscript.Echo "Category: " &amp;amp;amp; objEvent.Category &amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp;amp;amp; "Computer Name: " &amp; objEvent.ComputerName &amp;amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "Event Code: " &amp;amp; objEvent.EventCode &amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; "Message: " &amp; objEvent.Message &amp;amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "Record Number: " &amp;amp; objEvent.RecordNumber &amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; "Source Name: " &amp; objEvent.SourceName &amp;amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "Time Written: " &amp;amp; objEvent.TimeWritten &amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp;amp;amp; "Event Type: " &amp; objEvent.Type &amp;amp; VBNewLine _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "User: " &amp;amp; objEvent.User&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Next&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;Code Snippet #2:&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 2pt; }&lt;br /&gt;  .indent2 { padding-left: 4pt; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;ol class="code"&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;strComputer = "."&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set objWMIService = GetObject("winmgmts:" _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "{impersonationLevel=impersonate,(Backup)}!\\" &amp;amp; _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;strComputer &amp; "\root\cimv2")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set colLogFiles = objWMIService.ExecQuery _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;("Select * from Win32_NTEventLogFile " _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; "Where LogFileName='Application'")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;For Each objLogfile in colLogFiles&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;objLogFile.ClearEventLog()&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;WScript.Echo "Cleared application event log file"&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Next&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;p&gt;Code Snippet #3:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 2pt; }&lt;br /&gt;  .indent2 { padding-left: 4pt; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;ol class="code"&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;strComputer = "."&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set objWMIService = GetObject("winmgmts:" _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp; "{impersonationLevel=impersonate,(Backup)}!\\" &amp;amp; _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;strComputer &amp;amp; "\root\cimv2")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Set colLogFiles = objWMIService.ExecQuery _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;("Select * from Win32_NTEventLogFile " _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;&amp;amp; "Where LogFileName='Application'")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;For Each objLogfile in colLogFiles&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;errBackupLog = objLogFile.BackupEventLog( _&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;"c:\scripts\application.evt")&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;WScript.Echo "File saved as c:\scripts\applications.evt"&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;&lt;span style="color:#33ff33;"&gt;Next&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-6979670101871572326?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/8LEDLqOILPg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/6979670101871572326/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=6979670101871572326&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6979670101871572326?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6979670101871572326?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/8LEDLqOILPg/event-log.html" title="Event Log" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/09/event-log.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UCQXo9fSp7ImA9WB5XFUU.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-1464335615834524373</id><published>2007-07-13T20:06:00.000+08:00</published><updated>2007-07-16T18:21:00.465+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-07-16T18:21:00.465+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="query scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="MFCOM" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><title>MFCOM: Farm Session Count</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 5em; }&lt;br /&gt;  .indent2 { padding-left: 10em; }&lt;br /&gt;&lt;/style&gt;Another day of Citrix Administration, a simple MFCOM script to view Active Farm Sessions.&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Const cMetaFrameWinFarmObject = 1&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Const MFSessionStateActive = 1&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set theFarm = CreateObject("MetaFrameCOM.MetaFrameFarm")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;theFarm.Initialize(cMetaFrameWinFarmObject)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;intSessionCount = 0&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;intActiveCount = 0&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;For Each oSession In theFarm.Sessions&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;intSessionCount = intSessionCount + 1&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;If (oSession.SessionState = MFSessionStateActive) and (oSession.SessionName &lt;&gt; "Console") Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;intActiveCount = intActiveCount + 1&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo vbcrlf &amp; "*****************************"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo "User Name: " &amp; oSession.UserName&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo "IP Address: " &amp; oSession.ClientAddress&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo "Server: " &amp; oSession.ServerName&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo "Application: " &amp; oSession.AppName&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;WScript.Echo "Logon Time: " &amp; oSession.ConnectedTime&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Next&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;WScript.Echo  "Total Session Count = " &amp; intSessionCount &amp;amp; vbcrlf &amp; _&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;"Active Session Count = " &amp;amp; intActiveCount&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-1464335615834524373?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/YCn9dE5v9N0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/1464335615834524373/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=1464335615834524373&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1464335615834524373?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1464335615834524373?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/YCn9dE5v9N0/mfcom-farm-session-count.html" title="MFCOM: Farm Session Count" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/07/mfcom-farm-session-count.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EGQX48fyp7ImA9WB5XFUU.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-762196144891462668</id><published>2007-07-13T20:05:00.000+08:00</published><updated>2007-07-16T18:27:00.077+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-07-16T18:27:00.077+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="query scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="MFCOM" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="PS4" /><title>MFCOM: Connection licenses and usage count</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 5em; }&lt;br /&gt;  .indent2 { padding-left: 10em; }&lt;br /&gt;  .indent3 { padding-left: 15em; }&lt;br /&gt;&lt;/style&gt;Yet Another Citrix Administrator Task, monitor the connection licenses and usage count in the farm...&lt;br /&gt;&lt;br /&gt;Feel like a hill billy...&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt; &lt;ol class="code"&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Dim fso&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set fso = CreateObject("Scripting.FileSystemObject")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;If not fso.FolderExists("c:\liclog" )  then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;Set MyFolder = fso.createFolder("c:\liclog" )&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;else&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;End if&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;if not fso.FileExists("c:\liclog\licCount.log" )  then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;Set MyFile= fso.createTextFile("c:\liclog\licCount.log")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;MyFile.writeline "Date       " &amp;amp; " Time       " &amp; "Lic Type            " &amp;amp; "Used"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;MyFile.close&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;else&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;end if&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;Const ForAppending = 8&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;Set MyFile= fso.OpenTextFile("c:\liclog\licCount.log", ForAppending,True)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Dim theFarm, aLicense&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set theFarm = CreateObject("MetaFrameCOM.MetaFrameFarm")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;' Initialize the farm object.&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;theFarm.Initialize(MetaFrameWinFarmObject)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;For Each aLicense In theFarm.LicenseSets(MFLIcenseClassConnection)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;if aLicense.LicenseID = "0000000000000003" then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;MyFile.WriteLine date &amp;amp; "," &amp; time &amp;amp; "," &amp; aLicense.Name &amp;amp;amp;amp; "," &amp; aLicense.pooledinuse("")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;else&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;end if&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;next&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;MyFile.Close&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-762196144891462668?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/yNcA0L0pG14" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/762196144891462668/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=762196144891462668&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/762196144891462668?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/762196144891462668?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/yNcA0L0pG14/mfcom-connection-licenses-and-usage.html" title="MFCOM: Connection licenses and usage count" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/07/mfcom-connection-licenses-and-usage.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcERnkycCp7ImA9WB5XE08.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-2550139632390052703</id><published>2007-07-09T15:56:00.000+08:00</published><updated>2007-07-13T20:00:07.798+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-07-13T20:00:07.798+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="login scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="Agent.Control" /><category scheme="http://www.blogger.com/atom/ns#" term="api script" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="ActiveX" /><title>Merlin the great!</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;Imagine how amazed your users will be when they login to the domain and Merlin greets them...&lt;br /&gt;&lt;br /&gt;You can call Merlin using Agent Control and make do the moves while you perform you login scripts in the background...&lt;br /&gt;&lt;br /&gt;You can load information about the logged on user either using ADSI scripts or just by reading on the environment variable table...&lt;br /&gt;&lt;br /&gt;Take note of the length of the messages or actions you throw at Merlin, you might need to make use of the Sleep method, otherwise the sentences or the animation will overlap...&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;&lt;br /&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;strAgentName = "Merlin"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;strAgentPath = "Msagent\Chars\" &amp; strAgentName &amp;amp;amp;amp; ".acs"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set objAgent = CreateObject("Agent.Control.2")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;objAgent.Connected = True&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;objAgent.Characters.Load strAgentName, strAgentPath&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set merlin_d_great = objAgent.Characters.Character(strAgentName)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;With merlin_d_great&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;.Show&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .MoveTo(500,400)&lt;/code&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("Announce")&lt;/code&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("Explain")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Speak("Hi ")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("Read")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 2000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Speak("Today is " &amp; Now() &amp;amp; "...")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("ReadContinued")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 2000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Speak("and the time is " &amp;amp;amp; Time() &amp; "...")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 2000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("ReadReturn")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 2000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .MoveTo(750, 450)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("Pleased")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 5000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Speak("I will be back shortly...")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 5000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;Set objRequest = .Play("Wave")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;wscript.sleep 5000&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);" class="indent0"&gt;&lt;code&gt;.Hide&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;End With&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;Have a blast with Merlin, and oh... you can use other characters aswell...&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-2550139632390052703?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/vkj-NeiX4JA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/2550139632390052703/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=2550139632390052703&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/2550139632390052703?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/2550139632390052703?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/vkj-NeiX4JA/merlin-great.html" title="Merlin the great!" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/07/merlin-great.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAGRHg5cCp7ImA9WB5XE08.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-1524602456600352289</id><published>2007-07-09T13:38:00.000+08:00</published><updated>2007-07-13T19:38:45.628+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-07-13T19:38:45.628+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="IBM" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="kernel debugging" /><category scheme="http://www.blogger.com/atom/ns#" term="2K3" /><category scheme="http://www.blogger.com/atom/ns#" term="bsod" /><category scheme="http://www.blogger.com/atom/ns#" term="PS4" /><title>KD Memory.dmp debugging</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;&lt;span style="font-family: arial;font-size:100%;" &gt;One of our &lt;a href="http://www.citrix.com"&gt;Citrix&lt;/a&gt; server encountered a &lt;a href="http://en.wikipedia.org/wiki/Blue_Screen_of_Death"&gt;BSOD&lt;/a&gt;, luckily we had &lt;a href="http://www.ibm.com/systems/bladecenter/"&gt;RSA&lt;/a&gt; and managed to hard reboot the server.&lt;br /&gt;&lt;br /&gt;I've gathered the memory dump to view the cause of BSOD and  found the Symantec Antivirus  has caused a module error on the NIC driver.&lt;br /&gt;&lt;br /&gt;We have then disabled the Network Drives in the File System Auto Protect and it had not experienced the same ever since.&lt;br /&gt;&lt;br /&gt;Did not find any help from &lt;a href="http://www.symantec.com"&gt;Symantec&lt;/a&gt; regarding the root cause other than it's a known issue.&lt;br /&gt;&lt;br /&gt;Below are some steps that you could use for debbuging:&lt;/span&gt;&lt;br /&gt;&lt;ol style="color: rgb(51, 255, 51); font-family: arial;" class="code"&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Launch windbg passing it the location of the symbol files, the source files (i386 directory) and the dump file. Example: &lt;span style="font-weight: bold; color: rgb(255, 255, 0);"&gt;windbg -y dump\symbols -i SRC\i386 -z dump\Memory.dmp&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;At the bottom of the Command window there is a &lt;span style="font-weight: bold; color: rgb(255, 255, 0);"&gt;kd&gt;&lt;/span&gt; prompt.&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;The commands are entered into that prompt:&lt;span style="color: rgb(255, 255, 0);"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(255, 255, 0);"&gt;kd&gt;!analyze -v&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Two things to look for in the results: the memory referenced and the FAULTING_IP&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;The command: &lt;span style="font-weight: bold; color: rgb(255, 255, 0);"&gt;kd&gt;lm &lt;/span&gt;- will produce a listing of modules and their memory location.&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Look to see which module's memory the memory referenced identified above falls in.&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;That usually indicates the process that caused the crashed and will probably match the FAULTING_IP if listed.&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Also informative: &lt;span style="font-weight: bold; color: rgb(255, 255, 0);"&gt;kd&gt;.reload –v&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/ol&gt;  &lt;span style="color: rgb(255, 255, 255);font-family:arial;" &gt;If at first you fail, call it version 1.0&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-1524602456600352289?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/pTfeEnM5slo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/1524602456600352289/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=1524602456600352289&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1524602456600352289?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1524602456600352289?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/pTfeEnM5slo/kd-memorydmp-debugging.html" title="KD Memory.dmp debugging" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/07/kd-memorydmp-debugging.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUINQ3Y7fSp7ImA9WB5RGUQ.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-8303740371142317396</id><published>2007-06-28T09:31:00.000+08:00</published><updated>2007-06-28T10:26:32.805+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-28T10:26:32.805+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="WScript.Shell" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="RegObj.Registry" /><title>HowTo: Add cmd.exe to right click context menu</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;If you want the command prompt to be available whenever you right click on objects on your desktop or explorer, you can opt to create the keys in the registry:&lt;br /&gt;&lt;br /&gt;&lt;ul style="color: rgb(51, 102, 255);"&gt;&lt;li&gt;HKEY_CLASSES_ROOT\Folder\shell\MenuText\Command&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Change the (Default) value to &lt;span style="color: rgb(51, 102, 255);"&gt;cmd.exe /k cd "%1"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Or you can script it!&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol style="color: rgb(51, 255, 51);" class="code"&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Const HKEY_CLASSES_ROOT  = &amp;H80000000&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Const HKEY_CURRENT_USER  = &amp;amp;H80000001&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Dim WSHShell, objWMIService, strComputer, lcValue1&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;strComputer = "."&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Set objWMIService = GetObject("winmgmts:\\" &amp; strComputer &amp;amp;amp;amp; "\root\cimv2")&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Set objWSHShell = WScript.CreateObject("WScript.Shell")&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Set objRegObj = WScript.CreateObject("RegObj.Registry")&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;objWSHShell.Popup "This will enable CMD with explorer options for the Current User"&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;objWSHShell.RegWrite "HKCR\Folder\Shell\MenuText\Command\", "cmd.exe /k cd " &amp;amp; chr(34) &amp; "%1" &amp;amp; chr(34)&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;objWSHShell.RegWrite "HKCR\Folder\Shell\MenuText\", "Launch CMD"&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;tmp = objWSHShell.RegRead("HKCR\Folder\Shell\MenuText\")&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;code style="font-family: arial;"&gt;objWSHShell.Popup ("Current Value: " + tmp)&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-8303740371142317396?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/OOTayXKU_qk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/8303740371142317396/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=8303740371142317396&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/8303740371142317396?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/8303740371142317396?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/OOTayXKU_qk/howto-add-cmdexe-to-right-click-context.html" title="HowTo: Add cmd.exe to right click context menu" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/howto-add-cmdexe-to-right-click-context.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUERX8zcCp7ImA9WB5RGUQ.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-2733244879225712126</id><published>2007-06-28T09:16:00.000+08:00</published><updated>2007-06-28T09:30:04.188+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-28T09:30:04.188+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="root\cimv2" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="win32_service" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><title>HowTo: Enable disabled services</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 5em; }&lt;br /&gt;  .indent2 { padding-left: 10em; }&lt;br /&gt;&lt;/style&gt;If you want to automate startups on services that might be disabled by GPO, you can use Win32_Service class and change properties like the startup (Automatic\Manual\Disabled) or start\stop the service.&lt;br /&gt;&lt;br /&gt;In my case, I prefer to use themes on my XP machine at work but our GPO disables them so our machines look like NT desktops... it sucks ain't it?&lt;br /&gt;&lt;br /&gt;So to overcome this, I placed the script in my startup to enable the Themes and start the service.&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt; &lt;ol style="color: rgb(51, 255, 51);" class="code"&gt;&lt;li&gt;&lt;code&gt;strComputer = "."&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;Set objWMIService = GetObject("winmgmts:" _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;&amp; "{impersonationLevel=impersonate}!\\" &amp;amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;strComputer &amp;amp; "\root\cimv2")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;Set colServiceList = objWMIService.ExecQuery _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;("Select * from Win32_Service where Name = 'Themes'")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;For Each objService in colServiceList&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;'Wscript.Echo objService.Name&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;errReturnCode = objService.Change( , , , , "Automatic")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;If objService.State &lt;&gt; "Running" Then&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;objService.StartService()&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;Else&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;objService.StopService()&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;Wscript.Echo "Stopping..."&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;Wscript.Sleep 5000&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;objService.StartService()&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;Wscript.Echo "Applying Themes"&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent2"&gt;&lt;code&gt;Wscript.Sleep 5000&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li class="indent1"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;Next&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Change  line #6 value to any services that you want to enable (my case it's Name = 'Themes').&lt;br /&gt;&lt;br /&gt;I prefer to use Cscript when executing any vbs scripts to avoid having to click on message prompts whenever you Echo.&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-2733244879225712126?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/MsMBA5ZuRb8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/2733244879225712126/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=2733244879225712126&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/2733244879225712126?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/2733244879225712126?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/MsMBA5ZuRb8/howto-enable-disabled-services.html" title="HowTo: Enable disabled services" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/howto-enable-disabled-services.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQHR30_fCp7ImA9WB5RGUQ.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-3703086223917155131</id><published>2007-06-28T09:10:00.000+08:00</published><updated>2007-06-28T09:15:36.344+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-28T09:15:36.344+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><title>Bytes Converter Function</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;A simple function that converts Bytes to GB, MB or KB.&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt; &lt;ol class="code"&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Function SetBytes(Bytes,fKB)&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;if fKB=True then Bytes = Bytes * 1024&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If Bytes &gt;= 1073741824 Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;SetBytes = FormatNumber((Bytes / 1024 / 1024 / 1024),2,,-1,-1) &amp; " GB"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;ElseIf Bytes &amp;gt;= 1048576 Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;SetBytes =  FormatNumber((Bytes / 1024 / 1024),2,,-1,-1) &amp; " MB"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;ElseIf Bytes &amp;gt;= 1024 Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;SetBytes = FormatNumber((Bytes / 1024),2,,-1,-1) &amp; " KB"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;ElseIf Bytes &amp;lt; 1024 Then&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;SetBytes = Bytes &amp; " Bytes"&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;End Function&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;Usage:  SetBytes(Size,true\false)&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-3703086223917155131?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/17Hk7-Wb5pE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/3703086223917155131/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=3703086223917155131&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/3703086223917155131?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/3703086223917155131?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/17Hk7-Wb5pE/bytes-converter-function.html" title="Bytes Converter Function" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/bytes-converter-function.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0IGRnw5eSp7ImA9WB5RGEk.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-265664111272497138</id><published>2007-06-26T15:48:00.000+08:00</published><updated>2007-06-26T16:12:07.221+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T16:12:07.221+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NT Scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Shell.Application" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="UDF" /><category scheme="http://www.blogger.com/atom/ns#" term="api script" /><category scheme="http://www.blogger.com/atom/ns#" term="Kixtart Copy" /><category scheme="http://www.blogger.com/atom/ns#" term="Kixtart" /><title>Kix Copy script with GUI (Kixtart UDF)</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;Another KIXtart UDF, well the title says it all...&lt;br /&gt;&lt;br /&gt;Dependencies:&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;KiX 4.02 (or higher)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;Shell32.dll version 4.71 or later. (Included with: Windows 2000, Windows NT 4.0 with Internet Explorer 4.0, Windows 98, Windows 95 with Internet Explorer 4.0.)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Usage:&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;GUICopy("source", "destination", "optional flag", "optional flag")&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;@ERROR " : " @SERROR ?&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;Optional Flags:&lt;/span&gt;&lt;br /&gt; 4       - Do not display a progress dialog box.&lt;br /&gt; 8      - Give the file being operated on a new name in a move, copy, or rename&lt;br /&gt;            operation if a file with the target name already exists.&lt;br /&gt; 16    - Respond with "Yes to All" for any dialog box that is displayed.&lt;br /&gt; 64    - Preserve undo information, if possible.&lt;br /&gt;128   - Perform the operation on files only if a wildcard file name (*.*) is&lt;br /&gt;             specified.&lt;br /&gt;256   - Display a progress dialog box but do not show the file names.&lt;br /&gt;512   - Do not confirm the creation of a new directory if the operation requires&lt;br /&gt;            one to be created.&lt;br /&gt;1024 - Do not display a user interface if an error occurs.&lt;br /&gt;2048 - Version 4.71. Do not copy the security attributes of the file.&lt;br /&gt;4096 - Only operate in the local directory. Don't operate recursively into&lt;br /&gt;              subdirectories.&lt;br /&gt;8192 -  Version 5.0. Do not copy connected files as a group. Only copy the&lt;br /&gt;              specified files.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;Returns    The exitcode of the command in the @ERROR macro.&lt;/span&gt;&lt;br /&gt;@ERROR = 0     The operation completed successfully.&lt;br /&gt;@ERROR = 2     The system cannot find the file specified. (Refers to Source file.)&lt;br /&gt;@ERROR = 3     The system cannot find the path specified. (Bad destination path.)&lt;br /&gt;@ERROR = 9     The storage control block address is invalid. (Most likely cancelled copy.)&lt;br /&gt;@ERROR = 10    The environment is incorrect. (Incorrect Shell32.dll version.)&lt;br /&gt;@ERROR = 87    The parameter is incorrect. (Use 0 or 1 to specify Copy or Move.)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;  &lt;ol class="code"&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Function GUICopy($sSrc, $sDest, OPTIONAL $lFlags, OPTIONAL $bMove)&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Dim $sVer,$objShell,$objFldr&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If Not Exist($sSrc) Exit 2 Endif&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If Not Exist($sDest) Exit 3 Endif&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If @INWIN=1&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;$sVer=GetFileVersion(%WINDIR%+"\System32\Shell32.dll","FileVersion")&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Else&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;$sVer=GetFileVersion(%WINDIR%+"\System\Shell32.dll","FileVersion")&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Endif&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If $sVer&amp;lt;"4.71" Exit 10 Endif&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;$objShell=CreateObject("Shell.Application")&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;$objFldr=$objShell.NameSpace($sDest)&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If @ERROR&amp;lt;0 Exit VAL("&amp;amp;"+Right(DecToHex(@ERROR),4)) EndIf&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Select&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Case $bMove=1 $objFldr.MoveHere($sSrc,$lFlags)&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Case $bMove=0 $objFldr.CopyHere($sSrc,$lFlags)&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Case 1 Exit 87&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;EndSelect&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;If @ERROR&amp;lt;0 Exit VAL("&amp;amp;"+Right(DecToHex(@ERROR),4)) EndIf&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Exit @ERROR&lt;/code&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;EndFunction&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-265664111272497138?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/dJ7nnrtH4JQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/265664111272497138/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=265664111272497138&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/265664111272497138?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/265664111272497138?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/dJ7nnrtH4JQ/kix-copy-script-with-gui-kixtart-udf.html" title="Kix Copy script with GUI (Kixtart UDF)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/kix-copy-script-with-gui-kixtart-udf.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcBR306fyp7ImA9WB5RGEk.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-6682889451887477799</id><published>2007-06-26T15:30:00.000+08:00</published><updated>2007-06-26T15:47:36.317+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T15:47:36.317+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NT Scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="ftp" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft.XMLHTTP" /><category scheme="http://www.blogger.com/atom/ns#" term="ADODB.Stream" /><category scheme="http://www.blogger.com/atom/ns#" term="ftp script" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="Kixtart" /><category scheme="http://www.blogger.com/atom/ns#" term="ActiveX" /><title>Kix FTP (Kixtart UDF)</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;FTP via Kix? Yes!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: georgia;"&gt;Using &lt;/span&gt;&lt;code style="font-family: georgia;"&gt;Microsoft.XMLHTTP and ADODB.Stream.&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Usage:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;FTPget("ftp_address", "target_dest_drive", "id", "password")&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt; &lt;ol style="color: rgb(51, 204, 0);" class="code"&gt;&lt;li&gt;&lt;code&gt;Function FTPget($sURL, $sTargetFile, optional $sUser, optional $sPass)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;Dim $oFTP, $oStream  $sUser=""+$sUser&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oFTP = CreateObject("Microsoft.XMLHTTP")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if @error&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$ftpget=1&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;exit 1&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream = CreateObject("ADODB.Stream")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if @error&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$ftpget=2&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;exit 2&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if $sUser&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oFTP.Open("GET", $sURL, not 1, $sUser, $sPass)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;else&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oFTP.Open("GET", $sURL, not 1)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if @error&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$ftpget=3&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;exit 3&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oFTP.Send&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.Type = 1&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.Mode = 3&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.open&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.Write($oFTP.responseBody)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if @error&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$ftpget=4&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;exit 4&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.SaveToFile($sTargetFile, 2)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;if @error&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$ftpget=5&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;exit 5&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;endif&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;$oStream.Close&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li&gt;&lt;code&gt;EndFunction&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-6682889451887477799?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/TRJQt-57H4c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/6682889451887477799/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=6682889451887477799&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6682889451887477799?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6682889451887477799?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/TRJQt-57H4c/kix-ftp-kixtart-udf.html" title="Kix FTP (Kixtart UDF)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/kix-ftp-kixtart-udf.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4HQno9cCp7ImA9WB5RGEk.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-7462926190227561139</id><published>2007-06-26T14:53:00.001+08:00</published><updated>2007-06-26T15:28:53.468+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T15:28:53.468+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="web design" /><category scheme="http://www.blogger.com/atom/ns#" term="SMTP" /><category scheme="http://www.blogger.com/atom/ns#" term="Net::SMTP" /><category scheme="http://www.blogger.com/atom/ns#" term="Perl SMTP" /><category scheme="http://www.blogger.com/atom/ns#" term="MIME::Lite" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title>Perl SMTP</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;IIS6 requires an Application Pool (like Sharepoint or Exchange) other than Default Application Pool for your Web or Virtual Directory for .Net mail sending via your webpage or else CDONTS library will throw Access Denied errors In Yer Face!&lt;br /&gt;&lt;br /&gt;Well thanks to Perl's MIME-Lite and Net-SMTP you are likely to bypass this.&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;use MIME::Lite;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;use Net::SMTP;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# This debug flag will print debugging code to your browser,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# depending on its value&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# Set this to 1 to send debug code to your browser.&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# Set it to 0 to turn it off.&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $DEBUG = 1;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;if($DEBUG)&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$| = 1;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;open(STDERR, "&amp;gt;&amp;STDOUT");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# Set this variable to your smtp server name&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# my $ServerName = "YourSMTPServer";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# Creat a new SMTP object&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;#$smtp = Net::SMTP-&amp;gt;new($ServerName, Debug =&amp;gt; 1);&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;# If you can't connect, don't proceed with the rest of the script&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;#die "Couldn't connect to server" unless $smtp;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Adjust Sender &amp; Recepient email address&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $from_address = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $to_address = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $cc_address = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $mime_type = 'multipart/mixed';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Adjust subject and body message&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $subject = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $message_body = "";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Adjust the file to attach&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $filename1 = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $recommended_filename1 = '';&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Creat the initial text of the message&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $mime_msg = MIME::Lite-&amp;gt;new(&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;From =&amp;gt; $from_address,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;To   =&amp;gt; $to_address,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Cc   =&amp;gt; $cc_address,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Subject =&amp;gt; $subject,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Type =&amp;gt; $mime_type,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;)&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;or die "Error creating MIME body: $!\n";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Add the text message&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$mime_msg-&amp;gt;attach(&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Type =&amp;gt; 'TEXT',&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Data =&amp;gt; $message_body&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;) or die "Error adding the text message part: $!\n";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Attach the attachmnet file&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$mime_msg-&amp;gt;attach(&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Type =&amp;gt; 'application/txt',&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Path =&amp;gt; $filename1,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Filename =&amp;gt; $recommended_filename1,&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Disposition =&amp;gt; 'attachment',&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;)&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;or die "Error attaching test file: $!\n";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $message_body = $mime_msg-&amp;gt;body_as_string();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Set this variable to your smtp server name&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;my $ServerName = "";&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Creat a new SMTP object&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$smtp = Net::SMTP-&amp;gt;new($ServerName, Debug =&amp;gt; 1);&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### If you can't connect, don't proceed with the rest of the script&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;die "Couldn't connect to server" unless $smtp;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;MIME::Lite-&amp;gt;send('smtp', $ServerName, Timeout=&amp;gt;60);&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$mime_msg-&amp;gt;send;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;### Close the connection&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;$smtp-&amp;gt;quit();&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-7462926190227561139?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/8yaAf3pR3YM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/7462926190227561139/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=7462926190227561139&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7462926190227561139?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7462926190227561139?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/8yaAf3pR3YM/perl-smtp.html" title="Perl SMTP" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/perl-smtp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQGRHkycSp7ImA9WB5RGEk.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-6357305801028544545</id><published>2007-06-26T14:27:00.000+08:00</published><updated>2007-06-26T14:45:25.799+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T14:45:25.799+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="root\cimv2" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="WMI Ping" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="Win32_PingStatus" /><category scheme="http://www.blogger.com/atom/ns#" term="wmic" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="root\wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="wbem" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><title>WMI Ping (Win32_PingStatus)</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;  .indent1 { padding-left: 1em; }&lt;br /&gt;  .indent2 { padding-left: 2em; }&lt;br /&gt;  .indent3 { padding-left: 3em; }&lt;br /&gt;&lt;/style&gt;&lt;span style="font-family: georgia;"&gt;The code below is an example in how to use &lt;/span&gt;&lt;code style="font-family: georgia;"&gt;Win32_PingStatus class in WMI to check a remote machine's status on the network.&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;  &lt;ol class="code"&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Function PingHost(sTarget)&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Set cPingResults = GetObject("winmgmts:{impersonationLevel=impersonate}//" &amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;sHost &amp;amp; "/root/cimv2"). ExecQuery("SELECT * FROM Win32_PingStatus " &amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;"WHERE Address = '" + sTarget + "'")&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;For Each oPingResult In cPingResults&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;If oPingResult.StatusCode = 0 Then&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;If LCase(sTarget) = oPingResult.ProtocolAddress Then&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;WScript.Echo sTarget &amp;amp; " is responding"&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;Else&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent3"&gt;&lt;code&gt;WScript.Echo sTarget &amp;amp; "(" &amp; oPingResult.ProtocolAddress &amp;amp;amp; ") is responding"&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;Wscript.Echo "Bytes = " &amp;amp; vbTab &amp; oPingResult.BufferSize &amp;amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;vbTab &amp;amp;  "Time (ms) = " &amp;amp; vbTab &amp; oPingResult.ResponseTime &amp;amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;vbTab &amp;amp;  "TTL (s) = " &amp;amp; vbTab &amp; oPingResult.ResponseTimeToLive &amp;amp; _&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;vbTab &amp;amp;  "Hostname = " &amp;amp; vbTab &amp; oPingResult.ProtocolAddressResolved&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;Else&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;WScript.Echo sTarget &amp;amp; " is not responding"&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;WScript.Echo "Status code is " &amp; oPingResult.StatusCode&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent2"&gt;&lt;code&gt;WScript.Echo "*********************************"&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);" class="indent1"&gt;&lt;code&gt;End If&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;Next&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;code&gt;End Function&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-6357305801028544545?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/xWiwTwDlt-8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/6357305801028544545/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=6357305801028544545&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6357305801028544545?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6357305801028544545?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/xWiwTwDlt-8/wmi-ping-win32pingstatus.html" title="WMI Ping (Win32_PingStatus)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/wmi-ping-win32pingstatus.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UAQHg9fip7ImA9WB5RGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-7252988796965533037</id><published>2007-06-26T12:46:00.000+08:00</published><updated>2007-06-26T14:27:21.666+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T14:27:21.666+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NT Scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="login scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="SMTP" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="replytoall" /><title>How to: Enable Reply to All?</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;Did your company disabled the reply to all option on your Outlook?&lt;br /&gt;And even deployed a noreplyall.dll to remove the icon?&lt;br /&gt;&lt;br /&gt;It sucks ain't it? Copying all the address from the previous email instead of just clicking on the Replyall button...&lt;br /&gt;&lt;br /&gt;You could delete these two (2) keys in the registry then restart your Outlook.&lt;br /&gt;Customize your Toolbar , search for the Actions category and enable the ReplytoAll button.&lt;br /&gt;&lt;ul style="color: rgb(51, 255, 51);"&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: arial;"&gt;HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Outlook\DisabledCmdBarItemsList&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: arial;"&gt;HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Outlook\DisabledShortcutKeysList&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;If you have GPO applied, this settings will not be retained after you logoff or reboot your machine...&lt;br /&gt;&lt;br /&gt;Well a short NT script on your startup can bring it back...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;&lt;span style="color: rgb(51, 255, 51);font-size:100%;" &gt;&lt;/span&gt;  &lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;@Echo Off&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;&gt; "%Temp%.\EnableRep2All.reg" Echo Windows Registry Editor Version 5.00&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;&gt;&gt; "%Temp%.\EnableRep2All.reg" Echo&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;&gt;&gt; "%Temp%.\EnableRep2All.reg" Echo [-HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Outlook\DisabledCmdBarItemsList]&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;&gt;&gt; "%Temp%.\EnableRep2All.reg" Echo [-HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Outlook\DisabledShortcutKeysList]&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;&gt;&gt; "%Temp%.\EnableRep2All.reg" Echo&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;START /WAIT REGEDIT.EXE /S "%Temp%.\EnableRep2All.reg"&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;DEL "%Temp%.\EnableRep2All.reg"&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li style="font-family: arial; color: rgb(51, 255, 51);"&gt;&lt;span style="font-size:100%;"&gt;&lt;code&gt;Exit&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-7252988796965533037?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/U4XcjiXKkuM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/7252988796965533037/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=7252988796965533037&amp;isPopup=true" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7252988796965533037?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7252988796965533037?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/U4XcjiXKkuM/how-to-enable-reply-to-all.html" title="How to: Enable Reply to All?" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/how-to-enable-reply-to-all.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4NQXc-fip7ImA9WB5RGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-6813956737311565502</id><published>2007-06-26T12:07:00.000+08:00</published><updated>2007-06-26T12:43:10.956+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T12:43:10.956+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="wmic" /><category scheme="http://www.blogger.com/atom/ns#" term="win32_performattedData_perfOS_System" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="ps1" /><title>OS Performance monitoring (PowerShell)</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt; .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt; .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Another useful powershell code snippet, monitoring the OS performance...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$computer = "."&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$perf = get-wmiobject -class "Win32_PerfFormattedData_PerfOS_System" -computer $computer&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$uptime=$perf.SystemUpTime/3600&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Performance Stats: "&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Processes", $perf.Processes&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Threads", $perf.Threads&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "System Up Time `(hours`)", $uptime.tostring("00.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Alignment Fixups/sec", $perf.AlignmentFixupsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Context Switches/sec", $perf.ContextSwitchesPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Exception Dispatches/sec", $perf.ExceptionDispatchesPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Control Bytes/sec", $perf.FileControlBytesPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Control Operations/sec", $perf.FileControlOperationsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Data OperationsPersec", $perf.FileDataOperationsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Read Bytes/sec", $perf.FileReadBytesPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Read Operations/sec", $perf.FileReadOperationsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Write Bytes/sec", $perf.FileWriteBytesPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "File Write Operations/sec", $perf.FileWriteOperationsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Floating Emulations/rsec", $perf.FloatingEmulationsPersec.tostring("###,##0.0")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Percent Registry Quota Used", $($perf.PercentRegistryQuotaInUse/100).tostring("P")&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "Processor Queue Length", $perf.ProcessorQueueLength&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host "System Calls Persec", $perf.SystemCallsPersec&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;write-host ""&lt;/code&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;Sample Output:&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&lt;span style="font-family:arial;"&gt;Performance Stats:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Processes 66&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Threads 573&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;System Up Time (hours) 24.8&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Alignment Fixups/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Context Switches/sec 9,857.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Exception Dispatches/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Control Bytes/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Control Operations/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Data OperationsPersec 1,232.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Read Bytes/sec 3,943,044.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Read Operations/sec 1,232.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Write Bytes/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;File Write Operations/sec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Floating Emulations/rsec 0.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Percent Registry Quota Used 9.00 %&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Processor Queue Length 0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;System Calls Persec 51752&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-6813956737311565502?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/kSLZx6W--IU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/6813956737311565502/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=6813956737311565502&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6813956737311565502?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/6813956737311565502?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/kSLZx6W--IU/os-performance-monitoring-powershell.html" title="OS Performance monitoring (PowerShell)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/os-performance-monitoring-powershell.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEASX85fyp7ImA9WB5RGE4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-1224842063867183989</id><published>2007-06-26T11:54:00.000+08:00</published><updated>2007-06-26T12:04:08.127+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T12:04:08.127+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="win32_product" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="wmic" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="root\wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="query scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="software inventory" /><category scheme="http://www.blogger.com/atom/ns#" term="ps1" /><title>Software Inventory in a jiffy (Powershell)</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt;WMIC and WSH are good enough to perform software inventory collection... but the coding's just a little bit longer...&lt;br /&gt;&lt;br /&gt;Well to query wmi is not a big task, it's formatting the output that will get your code extra few lines of unnecessary vbtab's and vbcrlf's.&lt;br /&gt;&lt;br /&gt;Install Windows Power Shell, then it will take only three (3) lines of codes to get it running and the output is as lovely as a well defined tabular echo's on your console.&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt; &lt;ol class="code"&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;#Software Inventory&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$computer = "."&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$prod = Get-WmiObject -class "win32_product" -computer $computer&lt;/code&gt;&lt;br /&gt; &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51);"&gt;&lt;code&gt;$prod | sort name | ft Name, Version, Vendor, Installdate -a&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;Just save it as *.ps1 then execute it with powershell...&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-1224842063867183989?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/7mvC_AEbKtI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/1224842063867183989/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=1224842063867183989&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1224842063867183989?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/1224842063867183989?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/7mvC_AEbKtI/software-inventory-in-jiffy-powershell.html" title="Software Inventory in a jiffy (Powershell)" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/software-inventory-in-jiffy-powershell.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04BQns5fyp7ImA9WB5RGE8.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-7191059947074170152</id><published>2007-06-18T15:34:00.001+08:00</published><updated>2007-06-26T11:52:33.527+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-26T11:52:33.527+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="NT Scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="login scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="pinoy scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="Citrix" /><category scheme="http://www.blogger.com/atom/ns#" term="UDF" /><category scheme="http://www.blogger.com/atom/ns#" term="query scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="Kixtart" /><title>ADSI Kixtart UDF for Citrix login</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;  .code { border: 1px solid #ccc; list-style-type: decimal-leading-zero; padding: 5px; margin: 0; }&lt;br /&gt;  .code code { display: block; padding: 3px; margin-bottom: 0; }&lt;br /&gt;  .code li { background: #ddd; border: 1px solid #ccc; margin: 0 0 2px 2.2em; }&lt;br /&gt;&lt;/style&gt; Having a mixed mode environment gave us a lot of hassle when logging in to NT and querying group membership in AD...  Specially in our case, we have nested OU's...&lt;br /&gt;&lt;br /&gt;Ifmember.exe is useful for this problem but it does cause a slight delay in the login process and the users are complaining on the slow login session, some couldn't wait and cancels the connection... catastrophic experience ends up as a global complain... hmmm... some people are just impatient...&lt;br /&gt;&lt;br /&gt;So to be able to execute an ADSI query through kix login script the function below can be inserted anywhere in the login script to perform InGroup query... or this can fully replace the built in InGroup function in kixtart.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Code Snippet:&lt;br /&gt;&lt;ol class="code"&gt;   &lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;Function fnInGroupAD($sGroup,Optional $bComputer)&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;Dim $objSys,$objTarget,$aMemberOf,$sMemberOf&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;$objSys = CreateObject("ADSystemInfo")&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;$objTarget = GetObject("LDAP://"+Iif($bComputer,$objSys.ComputerName,$objSys.UserName))&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;$aMemberOf = $objTarget.GetEx("memberOf")&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;For Each $sMemberOf in $aMemberOf&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;If InStr($sMemberOf,"CN="+$sGroup+",")&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;$fnInGroupAD = Not 0&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;Exit&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;EndIf&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;Next&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;$fnInGroupAD = NOT 1&lt;/code&gt;   &lt;/li&gt;&lt;li style="color: rgb(51, 255, 51); font-family: arial;"&gt;&lt;code&gt;EndFunction&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-7191059947074170152?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/yPRAGJ7E2vM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/7191059947074170152/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=7191059947074170152&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7191059947074170152?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7191059947074170152?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/yPRAGJ7E2vM/adsi-kixtart-udf-for-citrix-login.html" title="ADSI Kixtart UDF for Citrix login" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/adsi-kixtart-udf-for-citrix-login.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AGR3w-cCp7ImA9WB5SGU4.&quot;"><id>tag:blogger.com,1999:blog-25573579.post-7306644258094444043</id><published>2007-06-16T03:21:00.000+08:00</published><updated>2007-06-16T04:35:26.258+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2007-06-16T04:35:26.258+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="admin scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="vbs" /><category scheme="http://www.blogger.com/atom/ns#" term="cpu temperature probe" /><category scheme="http://www.blogger.com/atom/ns#" term="wsh" /><category scheme="http://www.blogger.com/atom/ns#" term="wmic" /><category scheme="http://www.blogger.com/atom/ns#" term="windows xp" /><category scheme="http://www.blogger.com/atom/ns#" term="wbem" /><category scheme="http://www.blogger.com/atom/ns#" term="developer scripts" /><category scheme="http://www.blogger.com/atom/ns#" term="wmi" /><category scheme="http://www.blogger.com/atom/ns#" term="cpu process enum" /><title>Windows Management Instrumentation Command-line (WMIC) tool</title><content type="html">&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;I &lt;/span&gt;&lt;a style="font-family: arial;" href="http://26thgstreet.blogspot.com/2007/05/cpu-temp-probes.html"&gt;previously posted &lt;/a&gt;&lt;span style="font-family:arial;"&gt;an article regarding &lt;/span&gt;&lt;a style="font-family: arial;" href="http://26thgstreet.blogspot.com/2007/05/cpu-temp-probes.html"&gt;wbemtest&lt;/a&gt;&lt;span style="font-family:arial;"&gt; that can be utilized in performing wmi query.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt;I recently visited M$oft and found an article on &lt;a href="http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/wmic.mspx?mfr=true"&gt;wmi command-line&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It was a good read and I was pleased to know that it provides you a simple command-line interface to Windows Management Instrumentation (WMI).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;If you’ve never used WMIC, open a command prompt and type: WMIC&lt;/span&gt;&lt;/span&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;You should get a  brief installation message followed by a WMIC prompt.  You can type exit to return to the command prompt. WMIC has an interactive mode like NSLOOKUP or you can access it directly from the command line.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;For example, run "&lt;span style="color: rgb(51, 255, 51);"&gt;wmic os get caption,csdversion&lt;/span&gt;", then you should get something like this:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);font-family:arial;" &gt;Caption                            CSDVersion&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);font-family:arial;" &gt;Microsoft Windows XP Professional  Service Pack 2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Type WMIC /? to view more info.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);font-family:arial;" &gt;Note: &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 255, 51);font-family:arial;" &gt;Use the &lt;/span&gt;&lt;b style="font-family: arial; color: rgb(51, 255, 51);"&gt;/RECORD&lt;/b&gt;&lt;span style="color: rgb(51, 255, 51);font-family:arial;" &gt; global switch to redirect WMIC output to a file.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If at first you fail, call it version 1.0&lt;div class="blogger-post-footer"&gt;The Prodigal Son @ 26th G. Street&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25573579-7306644258094444043?l=26thgstreet.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheProdigalSon/~4/kzOzXOYQFgo" height="1" width="1"/&gt;</content><link rel="related" href="http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/wmic.mspx?mfr=true" title="Windows Management Instrumentation Command-line (WMIC) tool" /><link rel="replies" type="application/atom+xml" href="http://26thgstreet.blogspot.com/feeds/7306644258094444043/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=25573579&amp;postID=7306644258094444043&amp;isPopup=true" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7306644258094444043?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/25573579/posts/default/7306644258094444043?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheProdigalSon/~3/kzOzXOYQFgo/windows-management-instrumentation.html" title="Windows Management Instrumentation Command-line (WMIC) tool" /><author><name>The Prodigal Son</name><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="13787430360762314552" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://26thgstreet.blogspot.com/2007/06/windows-management-instrumentation.html</feedburner:origLink></entry></feed>
