<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The NeoSmart Files &#187; Guides</title>
	<atom:link href="http://neosmart.net/blog/category/guides/feed/" rel="self" type="application/rss+xml" />
	<link>http://neosmart.net/blog</link>
	<description>Connecting Ideas</description>
	<lastBuildDate>Sun, 08 Nov 2009 20:24:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Download Windows 7 System Recovery Discs</title>
		<link>http://neosmart.net/blog/2009/windows-7-system-repair-discs/</link>
		<comments>http://neosmart.net/blog/2009/windows-7-system-repair-discs/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 18:02:59 +0000</pubDate>
		<dc:creator>Mahmoud Al-Qudsi</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[NeoSmart Technologies]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Guide]]></category>
		<category><![CDATA[Recovery Disc]]></category>
		<category><![CDATA[Repair Disc]]></category>
		<category><![CDATA[Torrent]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/?p=699</guid>
		<description><![CDATA[
With Windows 7 released and currently making its way to shelves in time for the holiday season, we&#8217;ve taken this opportunity to upgrade our copy of the official Windows System Recovery Discs for compatibility with Windows 7.
If you&#8217;re like most PC users, you probably got Windows 7 with a new PC or laptop. And if [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://neosmart.net/blog/wp-content/uploads/Windows7.png" width="256px" height="192px" alt="" align="right" />
<p><em>With Windows 7 released and currently making its way to shelves in time for the holiday season, we&#8217;ve taken this opportunity to upgrade our copy of the official Windows System Recovery Discs for compatibility with Windows 7.</em></p>
<p>If you&#8217;re like most PC users, you probably got Windows 7 with a new PC or laptop. And if you&#8217;re like 99% of the population, you get your new machines from one of the major manufacturers. Dell, Acer, HP, Toshiba, Lenovo; who all have one thing in common: they don&#8217;t give you a real Windows 7 installation disc with your purchase. Instead, they bundle what they call a &#8220;recovery disc&#8221; (that&#8217;s if you&#8217;re lucky &#8211; otherwise you&#8217;ll have a recovery partition instead) with your machine and leave it at that.</p>
<p>It doesn&#8217;t matter that you just paid a thousand dollars for a machine that comes with a valid Windows 7 license &#8211; your computer manufacturer just don&#8217;t want to spend the money (or perhaps take on the responsibility) of giving you a Windows 7 installation DVD to accompany your expensive purchase.</p>
<p>The problem is, with Windows 7, the installation media serves more than one purpose. It&#8217;s not just a way to get Windows installed, it&#8217;s also the only way of recovering a borked installation. The Windows 7 DVD has a complete &#8220;recovery center&#8221; that provides you with the option of recovering your system via automated recovery (searches for problems and attempts to fix them automatically), rolling-back to a system restore point, recovering a full PC backup, or accessing a command-line recovery console for advanced recovery purposes.</p>
<p>Thankfully, Microsoft seems to have realized this problem, and have thankfully made a recovery disc for this purpose. It contains the contents of the Windows 7 DVD&#8217;s &#8220;recovery center,&#8221; as we&#8217;ve come to refer to it. It cannot be used to install or reinstall Windows 7, and just serves as a Windows PE interface to recovering your PC. Technically, one could re-create this installation media with freely-downloadable media from Microsoft (namely the Microsoft WAIK kit, a multi-gigabyte download); but it&#8217;s damn-decent of Microsoft to make this available to Windows&#8217; users who might not be capable of creating such a thing on their own. You can make your own copy from Windows 7 Ultimate Edition, but now you have an easier alternative.</p>
<p>NeoSmart Technologies is hosting a copy of the Windows 7 Recovery Disc for your convenience. It&#8217;s a 143 MiB download (165 MiB for the 64-bit version), and in the standard ISO format, ready to burned directly to a CD or DVD. <strong>Don&#8217;t wait until your PC crashes to download a copy! Download and burn your recovery disc today, so that when the time comes, you&#8217;ll be ready!</strong></p>
<p><strong>What it does:</strong> The Windows 7 Recovery Disc can be used to access a system recovery menu, giving you options of using System Restore, Complete PC Backup, automated system repair, and a command-line prompt for manual advanced recovery.</p>
<p><strong>What it doesn&#8217;t do:</strong> You cannot use the Windows 7 Recovery Disc to re-install Windows &#8211; it only fixes (not replaces!) Windows.</p>
<p><strong>Why you need it:</strong> If you bought your PC from a major retailer, you didn&#8217;t get this CD with your hefty purchase.</p>
<p><span id="more-699"></span></p>
<p><strong>Download Links</strong></p>
<p class="save"><a href="http://neosmart.net/downloads/miscellania/Windows 7 32-bit Repair Disc.torrent">Windows 7 Recovery Disc 32-Bit (x86) Edition</a></p>
<p class="save"><a href="http://neosmart.net/downloads/miscellania/Windows 7 64-bit Repair Disc.torrent">Windows 7 Recovery Disc 64-Bit (x64) Edition</a></p>
<p>Please note that the above links <em>point to .torrent files</em>. Torrent files are like a shortcut, they tell a download manager on your PC where to download the actual files from. Downloading large &amp; important system files with torrents is highly recommended since torrents are protected against corrupt downloads and tend to be faster when well-shared.</p>
<p>(All torrents are currently being seeded by 100mpbs servers, they should be blazing fast).</p>
<p>You can download the Windows Vista recovery discs from <a href="http://neosmart.net/blog/2008/windows-vista-recovery-disc-download/">here</a>.</p>
<p><strong>Instructions</strong></p>
<ol>
<li>Download the appropriate .torrent file from above that corresponds to the version of Windows 7 you have installed.</li>
<li>Download and run <a href="http://utorrent.com/download.php">µTorrent</a>.</li>
<li>Open the .torrent file you downloaded with µTorrent. (File -&gt; Add Torrent)</li>
<li>Select where you want µTorrent to save the 7 Recovery Disc.</li>
<li>Wait for it to download.</li>
<li>Burn the .iso file that µTorrent downloaded to a CD <a href="http://neosmart.net/wiki/display/G/Burning+ISO+Images+with+ImgBurn">using these instructions</a>.</li>
<li>When you want to use the recovery center, put the CD in your drive and boot from it. This is usually done by pressing F8 at startup, or changing the boot drive order in the BIOS.</li>
</ol>
<p><strong>Support</strong></p>
<p>Please don&#8217;t ask for help below, it&#8217;ll get real cluttered real soon! Open a support thread at <a href="http://neosmart.net/forums/">http://neosmart.net/forums/</a> and we&#8217;ll help you resolve your problem ASAP.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2009/windows-7-system-repair-discs/feed/</wfw:commentRss>
		<slash:comments>59</slash:comments>
		</item>
		<item>
		<title>Make Old Java Applications Fully Snow Leopard Compatible</title>
		<link>http://neosmart.net/blog/2009/make-old-java-applications-fully-snow-leopard-compatible/</link>
		<comments>http://neosmart.net/blog/2009/make-old-java-applications-fully-snow-leopard-compatible/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 20:33:47 +0000</pubDate>
		<dc:creator>Mahmoud Al-Qudsi</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Macintosh]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[OS X 10.6]]></category>
		<category><![CDATA[Rosetta]]></category>
		<category><![CDATA[Snow Leopard]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/?p=691</guid>
		<description><![CDATA[If you have a bunch of old Java applications lying around in your Mac&#8217;s /Applications folder, chances are, you&#8217;ll come across this message box when you attempt to run them on Snow Leopard:
To open JavaApplicationStub, you need to install Rosetta. Would you like to install it now?

Personally, I try my best to avoid legacy Mac [...]]]></description>
			<content:encoded><![CDATA[<p>If you have a bunch of old Java applications lying around in your Mac&#8217;s /Applications folder, chances are, you&#8217;ll come across this message box when you attempt to run them on Snow Leopard:</p>
<blockquote><p>To open JavaApplicationStub, you need to install Rosetta. Would you like to install it now?</p></blockquote>
<p><img src="http://neosmart.net/blog/wp-content/uploads/Install_Rosetta.png" alt="To open JavaApplicationStub, you need to install Rosetta. Would you like to install it now?" style="border:none;"/></p>
<p>Personally, I try my best to avoid legacy Mac OS apps and haven&#8217;t found the need to install Rosetta on OS X 10.6 Snow Leopard as of yet. Whether you have need of Rosetta for your other applications or not, there&#8217;s no reason you should be running your Java-based applications through the Rosetta environment &mdash; they&#8217;ll run just fine on native Intel Java on OS X&hellip; with just a little bit of a prod in the right direction.</p>
<p>Java applications are CPU agnostic (hence  the &#8220;write once, run everywhere&#8221; Java motto). The Java applets you download and use can theoretically be run on any <strike>PC</strike> machine that supports Java; be it Intel, PPC, ARM, SPARC, or more. The native Java virtual machine will translate the &#8220;Java bytecode&#8221; into the equivalent machine assembly that your PC uses and understands, and therefore, Java code written for legacy Mac OS should run just fine on Snow Leopard</p>
<p><span id="more-691"></span></p>
<p><em>If there&#8217;s no problem with running older Java applications on Snow Leopard, why am I seeing this dialog?</em> you ask. Well, the problem isn&#8217;t with the Java application itself, rather it&#8217;s an issue with the Java loader, which as a tiny native Mac OS application that simply launches the Java virtual machine and points it to the JAR file that contains the Java applet in question. If you have an old Mac OS application, chances are, it&#8217;s shipping with a PPC version of the Java Stub Loader, and that&#8217;s what&#8217;s triggering Rosetta. The good news is, it&#8217;s easy to fix, since the latest Intel-based Java stub loader on Snow Leopard can run <em>any</em> of your old JAR files easy as pie.</p>
<ol>
<li>Open Finder, and browse (command+shift+G) to
<pre>/System/Library/Frameworks/JavaVM.framework/Resources/MacOS/</pre>
</li>
<li>Copy the file &#8220;JavaApplicationStub&#8221; to the clipboard (command+C)</li>
<li>Now browse to the folder that contains the Java application in question.</li>
<li>Right-click the Java application, and select &#8220;Show Package Contents&#8221; to view the actual app files in the OS X app bundle.</li>
<li>Open the &#8220;Contents&#8221; subfolder, and then the &#8220;MacOS&#8221; folder.</li>
<li>Paste the &#8220;JavaStubLoader&#8221; file from the keyboard to here, and accept the overwrite prompt. You may need to enter your password when prompted as necessary.</li>
<li>You&#8217;re done!</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2009/make-old-java-applications-fully-snow-leopard-compatible/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>How-To: Revert the Mac OS X 10.5 Opaque Menu Bar Hack</title>
		<link>http://neosmart.net/blog/2008/how-to-revert-mac-os-x-105-opaque-menu-bar-hack/</link>
		<comments>http://neosmart.net/blog/2008/how-to-revert-mac-os-x-105-opaque-menu-bar-hack/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 00:55:07 +0000</pubDate>
		<dc:creator>Kristan Kenney</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Macintosh]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[OS X]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/?p=536</guid>
		<description><![CDATA[If you&#8217;ve been using Mac OS X Leopard 10.5 or 10.5.1 and had previously used the Terminal to make your menu bar opaque, you&#8217;re going to notice that something is slightly out-of-order when you upgrade to 10.5.2. Basically, what happens, is the old menu bar opacity hack still works in 10.5.2, but it looks slightly [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve been using Mac OS X Leopard 10.5 or 10.5.1 and had previously used the Terminal to make your menu bar opaque, you&#8217;re going to notice that something is slightly out-of-order when you upgrade to 10.5.2. Basically, what happens, is the old menu bar opacity hack still works in 10.5.2, but it looks slightly odd; and seeing as the update has the functionality built right in, you might as well just revert the hack.</p>
<p>Reverting the hack is simple. First of all, open a Terminal (/Applications/Utilities/Terminal.app) and in the console type the following commands:</p>
<p><code class="terminal">sudo defaults delete /System/Library/LaunchDaemons/com.apple.WindowServer 'EnvironmentVariables'     </p>
<p>sudo plutil -convert xml1 /System/Library/LaunchDaemons/com.apple.WindowServer.plist      </p>
<p>sudo chmod 644 /System/Library/LaunchDaemons/com.apple.WindowServer.plist      <br /></code></p>
<p>This will delete the hack parameter, convert the com.apple.WindowServer.plist file back to a readable XML format, and then reset the permissions on the file.</p>
<p>Once you&#8217;ve reverted the hack, restart the computer, and then you can go ahead and upgrade to 10.5.2. If you&#8217;re already running 10.5.2, you can change the menu bar opacity option in System Preferences &gt; Desktop and Screen Saver (the nice thing about this is that it is on-the-fly, no need to restart any more).</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2008/how-to-revert-mac-os-x-105-opaque-menu-bar-hack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>January 2008 Update</title>
		<link>http://neosmart.net/blog/2008/january-2008-update/</link>
		<comments>http://neosmart.net/blog/2008/january-2008-update/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 15:32:52 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[NeoSmart Technologies]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[EasyBCD]]></category>
		<category><![CDATA[iReboot]]></category>
		<category><![CDATA[Kristan Kenney]]></category>
		<category><![CDATA[Vista Hide 'n Seek]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2008/january-2008-update/</guid>
		<description><![CDATA[There&#8217;s been a lot going on so far at NeoSmart Technologies, and 2008 is shaping up to be an exciting year&#8230; Yes, January is almost over; so, no, this isn&#8217;t a New Year&#8217;s resolutions list. The thing about New Year&#8217;s resolutions is that they&#8217;re almost always left unfulfilled. But that doesn&#8217;t mean we can&#8217;t share [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s been a lot going on so far at NeoSmart Technologies, and 2008 is shaping up to be an exciting year&#8230; Yes, January is almost over; so, no, this isn&#8217;t a New Year&#8217;s resolutions list. The thing about New Year&#8217;s resolutions is that they&#8217;re almost always left unfulfilled. But that doesn&#8217;t mean we can&#8217;t share the good times, does it? Here&#8217;s some stuff to look forward to out of NST&#8217;s camp in the coming days/weeks/months:</p>
<p><span id="more-514"></span></p>
<p><strong>New Coverage</strong></p>
<p>We&#8217;re pleased to welcome Kristan M. Kenney to the NeoSmart blogging team &#8211; most of our readers are probably already familiar with his previous contributions to the online community. Kristan will be providing a &#8220;different&#8221; perspective on tech happenings and further insight into certain aspects of the computer industry that we haven&#8217;t &#8220;delved deeply enough into,&#8221; for lack of a better expression.</p>
<p><strong>New Content</strong></p>
<p>It&#8217;s taken us a while, but both the <a href="http://neosmart.net/wiki/display/G/">Guides section</a> and the <a href="http://neosmart.net/wiki/display/R/">Reviews section</a> of NST are finally up and running. At the moment, the reviews is pretty empty (read: void of any and all content); but we&#8217;ve been working hard (thanks to <a href="http://neosmart.net/wiki/browsepeople.action">our contributors</a>) on some all-new guides:</p>
<ul>
<li><a href="http://neosmart.net/wiki/display/G/Installing+Windows+Vista">Installing Windows Vista</a>
<li><a href="http://neosmart.net/wiki/display/G/Installing+Windows+XP">Installing Windows XP</a>
<li><a href="http://neosmart.net/wiki/display/G/Burning+ISO+Images+to+a+CD+or+DVD">Burning ISO Images</a>
<li><a href="http://neosmart.net/wiki/display/G/Web+Browser+Guides">Web Browser Guides for Beginners</a></li>
</ul>
<p>The guides are intended to cover as wide a range of content and readers as possible &#8211; from the beginner to the expert. Where possible, each guide will have dedicated sections for the varying levels of involvement and/or difficulty (for instance, tweaking Firefox&#8217;s options via the available settings&#8217; dialogs verses making advanced changes in about:config)</p>
<p><strong>New Programs</strong></p>
<p>At the end of the day, it seems that its our software that brings in the biggest share of attention, and here&#8217;s what we&#8217;re currently working on:</p>
<ul>
<li>Vista Hide &#8216;n Seek, a (free, of course) application that protects your Windows Vista System Restore points from corruption by Windows XP. Obligatory links: <a href="http://neosmart.net/forums/showthread.php?p=11561">Screenshots</a>, <a href="http://neosmart.net/forums/showthread.php?t=1341">Beta download links</a>.
<li>iReboot 1.1: an update to iReboot that works around Windows Vista&#8217;s non-negotiable blocking of all apps that require UAC elevation from running at startup. <a href="http://neosmart.net/forums/showthread.php?t=1344">Download the beta</a>.
<li>EasyBCD 2.0: it&#8217;s been a long time in the works, but rest assured, it&#8217;s coming along. No download links or screenshots for now&#8230;</li>
</ul>
<p><strong>Facebook</strong></p>
<p>Last but not least, you&#8217;re all invited to join us on Facebook: <a href="http://www.facebook.com/group.php?gid=16581015483">NeoSmart Technologies Facebook Group</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2008/january-2008-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Proper Shell Scripting on Windows Servers with Perl</title>
		<link>http://neosmart.net/blog/2007/proper-shell-scripting-on-windows-servers-with-perl/</link>
		<comments>http://neosmart.net/blog/2007/proper-shell-scripting-on-windows-servers-with-perl/#comments</comments>
		<pubDate>Tue, 13 Nov 2007 20:43:18 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Macintosh]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Batch]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Server Management]]></category>
		<category><![CDATA[Shell Scripting with Perl]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/proper-shell-scripting-on-windows-servers-with-perl/</guid>
		<description><![CDATA[
Fact: Shell scripting is a must for any serious IT admin managing a server. From automating backups to checking logs and keeping server performance and load in check, scripting is a must. 
Fact: Shell scripting on Windows sucks. ((Hopefully Monad (Microsoft Power Shell) will provide a solution, but so far the results are mixed; and [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li><strong>Fact:</strong> Shell scripting is a must for any serious IT admin managing a server. From automating backups to checking logs and keeping server performance and load in check, scripting is a must. </li>
<li><strong>Fact:</strong> Shell scripting on Windows sucks. ((Hopefully Monad (Microsoft Power Shell) will provide a solution, but so far the results are mixed; and it&#8217;s not popular enough to be considered a viable substitute at the moment.))</li>
<li><strong>Fact:</strong> Shell scripting on Linux and other *nix operating systems is powerful, well-documented, and quite straight-forward.</li>
</ul>
<p>Most people take a look at these three facts, and instantly come to a conclusion.. the <em>wrong</em> conclusion: you can&#8217;t properly manage a Windows server because it&#8217;s inherently lacking in the shell scripting department.</p>
<p><span id="more-500"></span></p>
<p>But that&#8217;s not true&#8230; Because here&#8217;s another fact for you:</p>
<p><strong>Perl scripts are a drop-in replacement for 99%</strong> ((We admit, that&#8217;s a made up statistic, give us a break though, will ya?)) <strong>of all shell scripting needs.</strong></p>
<p>And another fact:</p>
<p><strong>Perl (unlike PHP) runs great (awesome, in fact) on Windows.</strong></p>
<p>Now with these two facts in mind, you can now make a proper conclusion: <strong>Shell scripting on Windows doesn&#8217;t have to be difficult, limiting, or in any way inferior than on Linux</strong>.</p>
<p>Perl is an awesome language. Between the online Perl community and the millions of Perl-scripting samples across the web, it&#8217;s quite the well-documented language and no sysadmin has an excuse not to use it. The Perl modules are an extensive array of easy-to-use pluggable scripts that you just reference and run.</p>
<p>Perl was <em>created</em> for stuff like this. It&#8217;s the language of choice for hacking quick scripts that get the job done, easily, quickly, and with little pain or effort. A Perl script made to run on Linux will likely run on Windows too, with little to no hacking necessary for most of the stuff out there.</p>
<p>With Perl, you can easily do things like manage (prune, grep, or sort) log files, backup <em>and FTP or email</em> database server dumps, schedule webserver maintenance, and more.</p>
<p>Shell scripting with Perl is even easier than shell scripting in Bash &#8211; simply because of the huge libraries available that make even the most mundane and PITA tasks quite easy. It takes all of 6 statements (we&#8217;re purposely refraining from counting lines because this is <em>Perl</em> we&#8217;re talking about) to compose an email with your MySQL dumps as a GZIP&#8217;d attachment.</p>
<p>You can easily schedule Perl scripts to run at regular intervals with the Task Scheduler &#8211; but that&#8217;s about all you&#8217;ll ever need to interact with Windows for. </p>
<p>A quick Google search will reveal millions of results for <a href="http://www.google.com/search?q=perl+server+management+scripts&amp;rls=com.microsoft:en-US&amp;ie=UTF-8&amp;oe=UTF-8&amp;startIndex=&amp;startPage=1">&#8220;Perl server management scripts.&#8221;</a> Take your pick, hack it, and run.</p>
<p>Here&#8217;s our 5-step guide to managing your server with Perl scripts:</p>
<ol>
<li>Download and install <a href="http://www.activestate.com/Products/activeperl/">Perl for Windows</a> (ActivePerl, free).</li>
<li>Read <a href="http://perldoc.perl.org/perlfaq.html">the Perl FAQs</a> and <a href="http://en.wikibooks.org/wiki/Perl">get familiar with the syntax</a>. It&#8217;s nothing too complicated, and very simple to code in (though reading someone else&#8217;s code is another story). You absolutely don&#8217;t need anything more than the basic syntax, stuff like classes and functions are completely unnecessary for shell scripting &#8211; it&#8217;s too easy to even be considered programming!</li>
<li>Write your Perl script. Use a real text editor like <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a>.</li>
<li>Test it by running it from the command line and ensuring it does what you need. Repeat step 3 as needed.</li>
<li>Open up Scheduled Tasks in the Control Panel and set up a new task to run your Perl script however often you like.</li>
</ol>
<p>Sure, maybe it&#8217;s not as easy it looks and it&#8217;ll probably take you a day or so to go from absolute zero to cranking your first Perl-based shell script; but soon enough you&#8217;ll be doing it blindfolded and with <em>both</em> your hands behind your back. And it&#8217;ll only be one line long, too! </p>
<p><strong>The most important thing to realize is, you don&#8217;t need to be a programmer (or become one) in order to shell script in Perl</strong>.</p>
<p>Just pretend your Perl script is a batch file (yuck!). The Perl processor will run it from top to bottom, in a very straight-forward manner. Put one task/command per-line, stick loops where needed, and test constantly. You don&#8217;t need classes, you don&#8217;t need data structures, you don&#8217;t need object orientation, and you don&#8217;t even really need to use variables if you don&#8217;t want to!</p>
<p>We&#8217;ll be posting more details, guides, sample shell scripts, and how-to&#8217;s on Perl-based shell scripting in the weeks and months to come. Don&#8217;t give up just because it involves learning something new, this is in an investment that&#8217;ll last a lifetime. If you can shell script in Perl on Windows, you can do the same on Linux and OS X with ease. If you can shell script in Perl, you can do anything!</p>
<p class="alert">View <a href="http://neosmart.net/blog/tag/shell-scripting-with-perl/">all articles</a> in the &#8220;Shell Scripting with Perl&#8221; category.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/proper-shell-scripting-on-windows-servers-with-perl/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Getting WordPress Super Cache to Run on a Windows (IIS or Apache) Server</title>
		<link>http://neosmart.net/blog/2007/getting-wordpress-super-cache-to-run-on-a-windows-iis-or-apache-server/</link>
		<comments>http://neosmart.net/blog/2007/getting-wordpress-super-cache-to-run-on-a-windows-iis-or-apache-server/#comments</comments>
		<pubDate>Wed, 07 Nov 2007 23:59:42 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Server Optimization]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Super Cache]]></category>
		<category><![CDATA[WP-Cache]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/getting-wordpress-super-cache-to-run-on-a-windows-iis-or-apache-server/</guid>
		<description><![CDATA[If you&#8217;re a regular reader, you probably know by now that we just love performance and can&#8217;t get enough of server performance-improving software/code&#8230; Especially when it comes to WordPress.
Donncha has recently released a great plugin for WordPress, called &#34;WordPress Super Cache.&#34; It builds on the original WP-Cache plugin by Ricardo Granada &#8211; except that it [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re a regular reader, you probably know by now that we just <em>love</em> performance and can&#8217;t get enough of server performance-improving software/code&#8230; Especially when it comes to WordPress.</p>
<p>Donncha <a href="http://ocaoimh.ie/2007/11/05/wordpress-super-cache-01/">has recently released</a> a great plugin for WordPress, called &quot;WordPress Super Cache.&quot; It builds on the original WP-Cache plugin</a> by Ricardo Granada &#8211; except that it fixes all the bugs in the original implementation and has been written in enough pure PHP that it&#8217;ll also run on Windows servers &#8211; both IIS and Apache for that matter! &lt;cue applause&gt;</p>
<p>At the moment (as of version 0.3.1) it needs a bit of work to make it run, but not much. So here goes &#8211; 10 easy steps to get cached content on your IIS or Apache server under Windows:</p>
<p><span id="more-496"></span></p>
<ol>
<li>Download Donncha&#8217;s plugin <a href="http://ocaoimh.ie/wp-super-cache/">here</a>. </li>
<li>Extract it so you have a <code>/wp-content/plugins/wp-super-cache/</code> directory with all the files (like wp-cache.php) in there. </li>
<li>Copy      <br /><code>/wp-content/plugins/wp-super-cache/wp-cache-phase1.php</code> to       <br /><code>/wp-content/advanced-cache.php</code> </li>
<li>Open up <code>/wp-content/plugins/wp-super-cache/wp-cache.php</code> and locate this:      <br />[sourcecode language="php"]function wp_cache_check_link() {<br />
    global $wp_cache_link, $wp_cache_file;[/sourcecode] </li>
<li>Replace that with [sourcecode language="php"]function wp_cache_check_link() {<br />
	global $wp_cache_link, $wp_cache_file;</p>
<p>	if ( file_exists($wp_cache_link) )<br />
	    return true;<br />
	else {<br />
	    echo &#8220;<code>advanced-cache.php</code> does not exist<br />&#8220;;<br />
	    echo &#8220;Create it by copying <code>$wp_cache_file</code> to <code>$wp_cache_link</code> on your server<br />&#8220;;<br />
	    return false;<br />
	} [/sourcecode] </li>
<li>Log into your dashboard and enable WP Super Cache in the Plugins page.</li>
<li>Go to the WP Super Cache options page and enable caching.</li>
<li>Open <code>/wp-content/wp-cache-config.php</code> and look for <code>"WPCACHEHOME"</code> and correct     <br />a) Add an opening quotation mark before &quot;C:\&quot;      <br />b) Replace all &quot;\&quot; with &quot;\\&quot; or &quot;/&quot;</li>
<li>Create your rewrite rules like it says in readme.txt. If your using Apache on Windows, use mod_rewrite. If you&#8217;re using IIS, you&#8217;ll need to use the 3rd party (non-free, but quite good) <a href="http://www.helicontech.com/isapi_rewrite/">ISAPI_Rewrite 3.0</a> </li>
<li>If you have mod_gzip, mod_deflate, or IIS dynamic content caching enabled, make sure you <strong>don&#8217;t</strong> enable Super Cache gzip because it&#8217;s already being done on the server level (which is better, anyway! <img src='http://neosmart.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) </li>
</ol>
<p>Don&#8217;t forget to install either our <a href="http://neosmart.net/blog/2007/xcache-and-eaccelerator-wp-plugins-updated/">XCache or eAccelerator plugins</a> to speed up the stuff that WordPress Super Cache <em>doesn&#8217;t</em> cache, such as logged-in users&#8217; visits and comment processing, etc. as well as visits by people who have commented (see below).</p>
<p><strong>Known Issues</strong></p>
<ul>
<li><strike>WordPress Super Cache doesn&#8217;t cache the blog homepage. We&#8217;ve contacted the author (Donncha) and expect to get this fixed soon &#8211; it is <strong>not</strong> specific to Windows hosts.</strike></li>
<li>The non-Super Cache code (basically, caching for users who have commented) <strong>does not work</strong> for posts. This is a known bug in the WP-Cache code that WordPress Super Cache is using as a second caching layer, and there is no way around it at the moment. Don&#8217;t worry, posts are still being cached, just not for people who post a comment. Make sure you&#8217;re using <a href="http://neosmart.net/dl.php?id=12">the XCache plugin</a> to avoid this being a bottleneck.</li>
</ul>
<p><strong>Update:</strong></p>
<p>It seems that if you&#8217;re on an <em>Apache</em> server, it&#8217;s best to add a directive in httpd.conf stopping mod_gzip or mod_deflate from running in your WordPress directory, and instead using WordPress Super Cache&#8217;s built-in GZIP support. This is because Apache will not cache GZIP&#8217;d output, so you&#8217;ll end wasting thousands of precious CPU cycles re-GZIPping the same content over and over again. IIS users do not have to worry, IIS 6 GZIPs <em>and caches</em> all static content by default.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/getting-wordpress-super-cache-to-run-on-a-windows-iis-or-apache-server/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>How-To: Changing the Windows Vista Startup Sound</title>
		<link>http://neosmart.net/blog/2007/how-to-changing-the-windows-vista-startup-sound/</link>
		<comments>http://neosmart.net/blog/2007/how-to-changing-the-windows-vista-startup-sound/#comments</comments>
		<pubDate>Tue, 28 Aug 2007 10:10:16 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Sound]]></category>
		<category><![CDATA[Startup Sound]]></category>
		<category><![CDATA[Tweaking]]></category>
		<category><![CDATA[Vista]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/how-to-changing-the-windows-vista-startup-sound/</guid>
		<description><![CDATA[Of the many controversies surrounding Windows Vista,&#160;probably the most infamous&#160;(and pathetic) issues brought to the table is the Windows Vista Startup sound &#8211; and how to get rid of it. If&#160; you were anywhere but under a rock during the beta, it&#8217;s impossible to have missed the posts going back and forth by haters and [...]]]></description>
			<content:encoded><![CDATA[<p>Of the many controversies surrounding Windows Vista,&nbsp;probably the most infamous&nbsp;(and pathetic) issues brought to the table is the Windows Vista Startup sound &#8211; and how to get rid of it. If&nbsp; you were anywhere but under a rock during the beta, it&#8217;s impossible to have missed <a href="http://blogsearch.google.com/blogsearch?hl=en&amp;q=windows+vista+startup+sound&amp;ie=UTF-8&amp;as_maxm=10&amp;as_miny=2006&amp;as_maxy=2006&amp;as_minm=8&amp;as_mind=1&amp;as_maxd=1&amp;as_drrb=b&amp;ctz=-180&amp;c1cr=8%2F1%2F2006&amp;c2cr=10%2F1%2F2006&amp;btnD=Go">the posts going back and forth</a> by haters and supporters of Windows Vista&#8217;s new startup sound &#8211; which, like almost everything else in Windows Vista, doesn&#8217;t even always work.</p>
<p>This sound isn&#8217;t the one you get on startup (which is still there, just like in previous versions of Windows), but rather the one that plays right when Windows finishes loading &#8211; and you can&#8217;t do a thing about it. In our opinion, it&#8217;s a quite nice sound, but unfortunately you don&#8217;t get to hear it (most of the time) if you have a analog/digital sound card with analog being the default. At any rate, for those of you that don&#8217;t like it, chin up: it can be changed!</p>
<p> <span id="more-472"></span>
<ol>
<li>Grab&nbsp;<a href="http://www.softpedia.com/get/Programming/File-Editors/Resource-Hacker.shtml">reshacker</a> (or <a href="http://www.wilsonc.demon.co.uk/d10resourceeditor.htm">XN Resource Editor</a>,&nbsp;if you prefer),&nbsp;they&#8217;re both&nbsp;invaluable utilities that you should always keep at your side when you want to hack just about any program or feature on Windows.</li>
<li>Copy C:\Windows\System32\imageres.dll to another location, and open it with reshacker.</li>
<li>Open the WAVE subfolder, and select the appropriate localized resource as follows:</li>
<li><em>If you&#8217;re using XN Resource Editor, you don&#8217;t need to worry about this step: skip on to number 5.</em> Each language has a different code in Windows; in this example, we&#8217;re working on a United States English copy of Vista, which has language code 1033. Referring to the <a href="http://www.science.co.il/Language/Locale-Codes.asp?s=hexadecimal">list of language codes</a>, German would be 1031, and Spanish is 1034. Open the subfolder pertaining to your particular language code.</li>
<li>You need to replace resource name (number?) 5051 with a <strong>Wave file</strong> of your own &#8211; resource 5051 is the default Windows Vista startup sound, and you&#8217;re going to replace it with your own custom (<strong>wave!</strong>) file.</li>
<li>Save and exit.</li>
<li>Backup the original \Windows\System32\imageres.dll file, replace the existing one with your newly-modified uber-cool version, and reboot to check it out.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/how-to-changing-the-windows-vista-startup-sound/feed/</wfw:commentRss>
		<slash:comments>68</slash:comments>
		</item>
		<item>
		<title>How to: Install the Vista Bootloader on Windows XP</title>
		<link>http://neosmart.net/blog/2007/how-to-install-the-vista-bootloader-on-a-windows-xp-machine/</link>
		<comments>http://neosmart.net/blog/2007/how-to-install-the-vista-bootloader-on-a-windows-xp-machine/#comments</comments>
		<pubDate>Fri, 03 Aug 2007 06:50:49 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[BCD]]></category>
		<category><![CDATA[Bootloader]]></category>
		<category><![CDATA[EasyBCD]]></category>
		<category><![CDATA[Vista]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/how-to-install-the-vista-bootloader-on-a-windows-xp-machine/</guid>
		<description><![CDATA[Ever since Windows Vista came out, a lot of hype has been going around the new bootloader. That&#8217;s the hype that drove us to create EasyBCD, and that&#8217;s the same hype that&#8217;s been driving people to ask all around the web: &#8220;Is it possible to install the new Windows Vista bootloader on a non-Vista machine? [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since Windows Vista came out, a lot of hype has been going around the <a href="http://neosmart.net/gallery/v/neosmart/EasyBCD/1_60/Bootloader.png.html">new bootloader</a>. That&#8217;s the hype that drove us to create <a href="http://neosmart.net/dl.php?id=1">EasyBCD</a>, and that&#8217;s the same hype that&#8217;s been driving people to ask all around the web: &#8220;Is it possible to install the new Windows Vista bootloader on a non-Vista machine? Can I get XP to use the new Vista bootloader? How can I install the Vista bootloader on my XP-only machine?&#8221;
</p>
<p>First, a disclaimer: <em>In order to use the Vista bootloader, you&#8217;ll need some <u>licensed</u> Vista files. The only legal way to get these is by already having Windows Vista <u>legally installed</u> on another machine and grabbing the files from there. Kapish?</em> Second, the answer: Of course you can. And here&#8217;s how!
</p>
<p><span id="more-465"></span></p>
<ol>
<li>Go to a Vista machine and zip-up the C:\Windows\Boot\ folder. </li>
<li>Extract those zipped files to the same location on your XP machine. (i.e. you should now have a C:\Windows\Boot\ folder on your XP machine, too). </li>
<li>Download and install the <a href="http://neosmart.net/dl.php?id=1">latest version of EasyBCD</a>. </li>
<li>Run EasyBCD. When you first start it, it&#8217;ll tell you what you already know: the Vista bootloader isn&#8217;t installed! It&#8217;ll ask if you want to repair it &#8211; (obviously) click yes. </li>
<li>When prompted for the letter of a Vista drive, give it the same drive letter as your XP partition &#8211; the one you copied those files to earlier. When asked for the boot drive letter, give the letter of the drive with boot.ini and ntldr (most likely C:\). </li>
<li>Let EasyBCD &#8220;repair&#8221; your bootloader and wait for it to finish. </li>
<li>Once it&#8217;s done, you&#8217;ll have a (non-working) entry to boot into Windows Vista &#8211; delete it from the &#8220;Add/Remove Entries&#8221; screen and instead add a new entry for Windows XP. </li>
<li>Reboot &amp; Enjoy!</li>
</ol>
<p>5 easy steps (never mind the numbering), and you&#8217;ll have the Vista bootloader up and running in no time. What you do with it after that&#8230;. well, that&#8217;s up to you.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/how-to-install-the-vista-bootloader-on-a-windows-xp-machine/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Using Bad Word Filters to Boost SEO &amp; Productivity</title>
		<link>http://neosmart.net/blog/2007/using-bad-word-filters-to-boost-seo-productivity/</link>
		<comments>http://neosmart.net/blog/2007/using-bad-word-filters-to-boost-seo-productivity/#comments</comments>
		<pubDate>Tue, 12 Jun 2007 10:39:35 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Productivity]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/using-bad-word-filters-to-boost-seo-productivity/</guid>
		<description><![CDATA[If you&#8217;re a webmaster, administrator, or moderator of any large blog, forum, or other community site, you&#8217;ll find that a lot of time is wasted spelling out URIs to various useful links, whether they&#8217;re to guides, reviews, downloads, or forms. On a big website with lots of members (especially that kind that don&#8217;t use the [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re a webmaster, administrator, or moderator of any large blog, forum, or other community site, you&#8217;ll find that a lot of time is wasted spelling out URIs to various useful links, whether they&#8217;re to guides, reviews, downloads, or forms. On a big website with lots of members (especially that kind that don&#8217;t use the search feature), you&#8217;ll find that dozens of hours or more are wasted looking up and writing these URIs for your readers/members to&nbsp;follow.</p>
<p>Compare <span style="font-family: consolas,monospace">[url=http://neosmart.net/wiki/display/EBCD/Windows+XP]Windows XP dual-boot guide[/url] </span>to <span style="font-family: consolas,monospace">XP dboot</span> — it doesn&#8217;t take a rocket scientist to figure out which is easier, quicker, and simpler to use. But of course, your readers have no idea what &#8220;dboot guide&#8221; is or where they can find it – that&#8217;s where the &#8220;bad word filters&#8221; come in.
<p>Most forums, blogs, wikis, and just about any other &#8220;web platform engines&#8221; have a plugin, module, or admin center feature to enable the filtering of swear words and their ilk. Simply create a new entry that replaces a quick and easy-to-remember &#8220;keyword&#8221; with a fully-formatted link of your choice. You can replace &#8220;qwerty&#8221; with &#8220;The quick brown fox jumps over the lazy dog&#8221; or (much more usefully) replace things like &#8220;gsearch &#8221; with &#8220;http://www.google.com/search?q=&#8221; which lets you type things like &#8220;gsearch EasyBCD&#8221; and have them automagically replaced with the <a href="http://www.google.com/search?q=EasyBCD">appropriate link</a>.</p>
<p>You can use this to boost productivity (by speeding up the process of finding, posting, and formatting links) and to increase SEO (by converting keywords to internal links to the respective pages). For instance, replacing all instances of &#8220;NeoSmart Technologies&#8221; with <a href="http://neosmart.net/" title="NeoSmart Technologies" style="color: red; font-weight: bold">NeoSmart Technologies</a>:[sourcecode language='java']<a href="http://neosmart.net/" title="NeoSmart Technologies" style="color: red; font-weight: bold">NeoSmart Technologies</a>[/sourcecode]</p>
<p><span id="more-447"></span>
<p>Best of all, some web scripts preserve the original text and reformat it on the fly (verses permanently changing the text to the replacement), so that if the URI should ever change (and it shouldn&#8217;t, <em>ever</em>), the text also auto-magically changes with it. For instance, if your homepage moved from neosmart.net to neosmart.com, all you&#8217;d have to do is open that bad-word filter entry and change it to point to neosmart.com instead, and <em>all</em> &#8220;shortcut keywords&#8221; you ever entered will also be relpaced&#8230; Talk about efficient!</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/using-bad-word-filters-to-boost-seo-productivity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharpDevelop &#8220;invalid EventMemberSpecifier&#8221; Error &amp; Solution</title>
		<link>http://neosmart.net/blog/2007/sharpdevelop-invalid-eventmemberspecifier-error-solution/</link>
		<comments>http://neosmart.net/blog/2007/sharpdevelop-invalid-eventmemberspecifier-error-solution/#comments</comments>
		<pubDate>Sun, 03 Jun 2007 20:55:27 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[.NET Framework]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[SharpDevelop]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/sharpdevelop-invalid-eventmemberspecifier-error-solution/</guid>
		<description><![CDATA[The Problem

SharpDevelop, for those of you that haven&#8217;t heard of it, is a very light-weight open source alternative to Visual Studio 2005. It doesn&#8217;t have all the frills and features that Microsoft&#8217;s professional IDE does, but in exchange it gives you much less bloat, faster speeds, and quite a few nifty built-in tools like SVN [...]]]></description>
			<content:encoded><![CDATA[<h3>The Problem<br />
</h3>
<p><a href="http://icsharpcode.net/">SharpDevelop</a>, for those of you that haven&#8217;t heard of it, is a very light-weight open source alternative to Visual Studio 2005. It doesn&#8217;t have all the frills and features that Microsoft&#8217;s professional IDE does, but in exchange it gives you much less bloat, faster speeds, and quite a few nifty built-in tools like SVN integration, FxCop auto-checking, code profiling, language conversion (C# &lt;-&gt; VB.NET &lt;-&gt; Boo#), and a bit more &#8211; but it has its drawbacks, too.
</p>
<p>SharpDevelop is intended to be a 100% open source drop-in replacement for the Visual Studio IDE on Windows (there&#8217;s MonoDevelop for Linux if you like), and for the most part, it works just fine. But once in a while, an odd quirk pops up that&#8217;s rather obvious &amp; common&#8230; yet unsolved and makes us wonder.
</p>
<p><span id="more-440"></span></p>
<p>Anyway, if you&#8217;re getting any errors like:
</p>
<p><code>Syntax errors in Form1.vb:<br/> -- line 8900 col 121: invalid EventMemberSpecifier</code></p>
<p>Then you are suffering from such an oversight. It turns out that Visual Studio 2005 uses &#8220;Handles Me.xxxxx&#8221; to assign event handlers to form components in Visual Basic 2005. Now it&#8217;s not very clear what exactly is &#8220;right&#8221; per-say here, but SharpDevelop doesn&#8217;t recognize this as valid code, and instead requires &#8220;Handles MyBase.xxxxx&#8221; appended to functions that handle form components.
</p>
<h3>The Solution<br />
</h3>
<p>When you access the &#8220;Designer&#8221; tab you&#8217;ll be presented with the message above. To fix it, simply switch to the code-behind display by selecting the appropriate tab at the bottom, then press &#8220;ctrl+f&#8221; to search for code. Switch to the &#8220;replace&#8221; tab, and type in: <code>Handles Me.</code> and in the &#8220;replace&#8221; section enter <code>Handles MyBase.</code> and click &#8220;replace all.&#8221;
</p>
<p>Luckily Visual Studio 2005 is compatible with both &#8220;MyBase&#8221; and &#8220;Me&#8221; when referring to the parent form in Visual Basic 2005, so with this simple change you should be able to freely switch back and forth between the two without much trouble.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/sharpdevelop-invalid-eventmemberspecifier-error-solution/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How-To: Hide Vista Partition from XP with NeoGrub!</title>
		<link>http://neosmart.net/blog/2007/hide-vista-partition-from-xp/</link>
		<comments>http://neosmart.net/blog/2007/hide-vista-partition-from-xp/#comments</comments>
		<pubDate>Sat, 02 Jun 2007 14:47:08 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Dual Booting]]></category>
		<category><![CDATA[EasyBCD]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[System Restore]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Vista]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/hide-vista-partition-from-xp/</guid>
		<description><![CDATA[Editor&#8217;s note: This article was modified on Jan. 31, 2009 to reflect the usage of Vista Hide &#8216;n Seek, NeoSmart Technologies&#8217; new, free product for automating the NeoGrub hiding procedure.
One of the biggest problems that faces dual-booters is data corruption on many different fronts. While using proper dual-boot techniques and going by the book can [...]]]></description>
			<content:encoded><![CDATA[<p><em>Editor&#8217;s note: This article was modified on Jan. 31, 2009 to reflect the usage of <a href="http://neosmart.net/forums/showthread.php?t=1341">Vista Hide &#8216;n Seek</a>, NeoSmart Technologies&#8217; new, free product for automating the NeoGrub hiding procedure.</em></p>
<p>One of the biggest problems that faces dual-booters is data corruption on many different fronts. While using proper dual-boot techniques and going by the book can avoid most forms of data corruption, there are some things that you can&#8217;t just work around, especially if it&#8217;s considered a “feature” by Microsoft… One such “feature” is that those dual-booting Windows XP and Windows Vista will find that every time they boot into <span class="caps">XP,</span> they&#8217;ll lose <em>all</em> their Vista system restore points &#8211; because XP “intelligently” detects them as being corrupt XP system restore profiles. So much for painless dual-booting. Even Vista&#8217;s “Complete Backup” feature is decimated by the very existence of XP on the same computer &#8211; and having them on separate hard drives doesn&#8217;t help!</p>
<p>Unfortunately, there is no guaranteed solution to this. <a href="http://support.microsoft.com/kb/926185">Microsoft acknowledges the issue</a> &#8211; and provides a possible fix in the form of a registry patch for XP ( http://support.microsoft.com/kb/926185 ) though this isn&#8217;t something that works for everybody. The advice has been either not to dual-boot at all, run XP in a virtual machine, or else encrypt the Vista hard drive &#8211; a feature that has more bugs than the rest of Vista put together. But don&#8217;t worry, we have a couple of (free and easy!) solutions for you!</p>
<p><strong>Method 1: Vista Hide &#8216;n Seek</strong></p>
<p>The NeoSmart <em>preferred</em> solution, which supercedes the use of NeoGrub (see belwo) for this purpose is our own program, “<strong><a href="http://neosmart.net/forums/showthread.php?t=1341">Vista Hide &#8216;n Seek</a></strong> ” (<strong>HnS</strong>). This will not only protect your Vista restore points from corruption by <span class="caps">XP,</span> it will automate the whole process without you needing to get involved in the messy business of translating Windows disk and partition information into Linux speak.</p>
<p>Should you have a Vista and an XP system installed on their own disks, each blissfully unaware as yet of the existence of the other, and you are about to embark upon dual-booting them, and have come here because you wisely want to protect Vista from XP from the very start, look no further. HnS will not only do its stated job of hiding Vista from <span class="caps">XP,</span> it will automate the entire dual boot process for you, and all with just a couple of clicks in a friendly Graphical User Interface.</p>
<p>All you are required to do, is indentify, in an Explorer-like window, which partition(s) contain Vista restore folders to be protected and which partition(s) have a bootable XP installation. This is done with a simple point and click, and that&#8217;s about it. You have your dual boot set up, with Vista restore points protected from <span class="caps">XP.</span> Provided you have only one Vista system, this solution will give you a neat, single boot menu even if you have several XP installations.</p>
<p>(Remember in <em>each</em> OS before you start, to turn off system restore on all partitions except the OS itself and any partition on which you have installed 3rd party software for that <span class="caps">OS.</span> These are the only drives that need to be monitored by system restore, and in the case of Vista, these are the ones you need to mark as Vista to HnS, so that they are hidden from <span class="caps">XP.</span> It follows therefore that you cannot install 3rd party software on a disk shared between Vista and <span class="caps">XP.</span> You can however share data between them on a common partition because system restore will be turned off on this drive and it will therefore contain no system restore folder to be corrupted by XP).</p>
<p><strong>Method 2: NeoGrub</strong></p>
<p>If you are still determined to use NeoGrub to do this, despite the advantages of HnS, and you are prepared to live with the fact that your dual-boot will have two (or three) menus, here&#8217;s how to do it.</p>
<ol>
<li>If you don&#8217;t already have it, download and install <a href="http://neosmart.net/dl.php?id=1">EasyBCD</a>.</li>
<li>Run EasyBCD and go to the “Add/Remove Entries” screen.</li>
<li>Delete any and all “Windows XP” entries in the list you see. Simply select them, and press the delete button.</li>
<li>Click the “NeoGrub” tab, and select “Install NeoGrub” from <a href="http://neosmart.net/gallery/v/neosmart/EasyBCD/1_60/Installing+NeoGrub.png.html">the screen</a>.</li>
<li>Once NeoGrub is installed, hit the “Configure NeoGrub” button.Notepad will open, and you&#8217;ll be presented with the NeoGrub configuration file, called “menu.lst” NeoGrub provides a bunch of very nifty options that will help us hide the Vista drive from Windows <span class="caps">XP,</span> in a very safe, simple, and straight-forward manner.
<p>Copy and paste this code over the existing menu.lst file. Replace everything:</li>
</ol>
<pre style="font: 12px/18px Consolas, Monaco, 'Courier New', Courier, monospace;"># NeoSmart NeoGrub Bootloader Configuration File
#
# This is the NeoGrub menu.lst file, and should be located at C:\\menu.lst
# Please see the EasyBCD Documentation for information on how to create/modify entries
# http://neosmart.net/wiki/display/EBCD

default 0
timeout 0

title Boot XP - Hide Vista
hide (hd0,1)                    # SET THIS TO THE VISTA DRIVE
# Optionally repeat the above entry for all the Vista drives
chainloader (hd0,0)/ntldr       # SET THIS TO THE BOOT PARTITION
boot

# Optional section
#  If you include this section, you will see a second bootloader menu!
title Boot XP - Unhide Vista
unhide (hd0,1)                  # SET THIS TO THE VISTA DRIVE
# Optionally repeat the above entry for all the Vista drives
chainloader (hd0,0)/ntldr       # SET THIS TO THE BOOT PARTITION
boot</pre>
<p>NB: If you have multiple Vista partitions, you will need to duplicate the “hide” and “unhide” lines to point to the other Vista partitions as well in order to hide them too.</p>
<p>Read “<a href="http://neosmart.net/wiki/display/EBCD/Drive+Letters+and+Numbers">Drive Letters and Numbers</a>” to figure out which (hd<em>x</em>,<em>y</em>) sequence you need to use. Hard drive and partition counts start at 0. You can see a full list of drives and partitions by going to the “Linux/BSD” tab of the “Add/Remove Entries” section in EasyBCD.</p>
<p>Save it, and exit notepad.</p>
<p>Optional: Go to the “Configure Boot” screen and rename the entry from “NeoGrub Bootloader” to “XP” or another name of your choice.</p>
<p>Exit EasyBCD &amp; reboot to test.</p>
<p>Now when you reboot your <span class="caps">PC,</span> the Vista <span class="caps">BCD</span> menu will give you two options: <strong>Windows Vista</strong> and <strong>Windows XP</strong> (or NeoGrub if you didn&#8217;t rename it). Selecting Windows Vista or allowing the boot to default will boot you right into Windows Vista, while choosing Windows XP will transfer control of the bootloader process to NeoGrub.</p>
<p>NeoGrub will display another boot menu with two options: <strong>Hide Vista &#8211; boot XP</strong> and <strong>Unhide Vista &#8211; Then boot it.</strong></p>
<p>Selecting the first option will hide Vista&#8217;s drive and then call up <span class="caps">NTLDR</span> which will read the boot.ini menu. If you only have one XP installed, it will boot right into it . If you have multiple XP installations, you&#8217;ll be presented with a <strong>third</strong> menu of installations to boot to, all of which will no longer see the Vista drive.</p>
<p><strong>Now here&#8217;s the tricky part.</strong> You&#8217;ve just been using <span class="caps">XP,</span> You&#8217;ve finished with <span class="caps">XP.</span> You want to go back to Vista. You boot the <span class="caps">PC.</span></p>
<p><strong>You cannot select Vista from the first menu</strong>. Vista is still hidden. You must select XP again from the first menu, but this time, you do not allow the second menu to take the default, you select the “<strong>Unhide Vista &#8211; then boot it</strong>” option. The system will reboot, but NeoGrub will unhide the Vista partition(s) first, and <em>this time</em>, you <em>can</em> select Vista from the first menu.</p>
<p>This technique works perfectly, but as you can see, is extremely clumsy in use, especially with two or more XPs. That was why HnS was developed. Why not do yourself a favour and use <em>it</em> instead.</p>
<p><strong>Please do not under any circumstances post support requests in the comments below &#8211; they will go unanswered. If you have any questions or problems, post in <a href="http://neosmart.net/forums/">the forums</a>!</strong></p>
<p><small>Special thanks to the <a href="http://gna.org/projects/grub4dos">Grub4Dos Project</a>, without which none of this would have been possible.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/hide-vista-partition-from-xp/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Recovering Corrupted Downloads the Right Way</title>
		<link>http://neosmart.net/blog/2007/recovering-corrupt-downloads-with-bittorrent/</link>
		<comments>http://neosmart.net/blog/2007/recovering-corrupt-downloads-with-bittorrent/#comments</comments>
		<pubDate>Thu, 03 May 2007 14:14:09 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Bittorrent]]></category>
		<category><![CDATA[Downloads]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[uTorrent]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/recovering-corrupt-downloads-with-bittorrent/</guid>
		<description><![CDATA[You don&#8217;t have an OC-48 or even T3 in your home. It takes you 24 hours+ to download the latest DVD image of Ubuntu or Windows Vista. Or maybe it &#8220;only&#8221; takes you 12 hours+. Either way, you&#8217;ve just finished your download to realize that its corrupt: the crc32 and md5 hashes just don&#8217;t add [...]]]></description>
			<content:encoded><![CDATA[<p>You don&#8217;t have an OC-48 or even T3 in your home. It takes you 24 hours+ to download the latest DVD image of Ubuntu or Windows Vista. Or maybe it &#8220;only&#8221; takes you 12 hours+. Either way, you&#8217;ve just finished your download to realize that its corrupt: the crc32 and md5 hashes just don&#8217;t add up. You burn it any way, only to find that it crashes randomly at some point of the install &#8211; or if you&#8217;re <em>really</em> unlucky, once it boots and seems to be working fine.</p>
<p>It&#8217;ll take you an entire extra day (and night) to re-download that copy.. and this time you&#8217;ll want to make doubly-sure you don&#8217;t disconnect in the middle or hit the power-switch by accident. Then you stumble upon this article, and realize you&#8217;ve been going about this the wrong way. Because the answer isn&#8217;t to download it again, but to only download the parts that are corrupt, the parts that you <em>need</em> &#8211; and nothing more.</p>
<p><span id="more-420"></span></p>
<p>The solution is bittorrent. Chances are, whatever DVD image or file you&#8217;re downloading exists on someone else&#8217;s PC. Given the huge number of people using bittorrent, it&#8217;s highly likely that if you&#8217;re downloading something popular, some kindred soul out there has chosen to share their bandwidth with the world to help out people like you.</p>
<p>Maybe you chose to download this file via HTTP (normal internet) because it was faster than waiting for that torrent with only 2 seeds and 2 peers to finish downloading at 12 KB/s. Maybe you didn&#8217;t know that it was available on bittorrent, or maybe you didn&#8217;t even know what bittorrent was. But it doesn&#8217;t matter, because now bittorrent can help you save that data without downloading it all again.</p>
<p>First, you&#8217;ll need a decent bittorrent client. <a href="http://utorrent.com/">&micro;Torrent</a> is great for just about everyone using Windows, Linux, or Mac (the latter two by using <a href="http://winehq.com/">Wine</a>). Just download it and run &ndash; no setup needed. Then you&#8217;ll need to search for the file you&#8217;re looking for. In this case, we&#8217;ll be searching for Windows Longhorn Server Beta 3, English Enterprise Edition. We already dowloaded the ISO <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=D97E2060-36AD-4EAA-8B0B-DAB2557B1EEF&#038;displaylang=en">from Microsoft</a> just to find out it was corrupted somewhere in the past 14 hours of downloading. So we head over to <a href="http://isohunt.com/">IsoHunt</a> and search for the file: <a href="http://isohunt.com/torrents/?ihq=wsl_6001.16510.070417-1740_x86fre_server-KB3SFRE_EN_DVD.iso">wsl_6001.16510.070417-1740_x86fre_server-KB3SFRE_EN_DVD.iso</a>. We&#8217;re in luck, and someone&#8217;s decided to share. We open the link in &micro;Torrent, and check the file hash really quick against the one we got from Microsoft &ndash; and they match!</p>
<p>Now we&#8217;re all set. Just start the download in &micro;Torrent, tell it to save it in the <em>same location</em> as the corrupt download, and it&#8217;ll do the rest. First, it&#8217;ll check to see if a file with the same name already exists in the same directory. Since it does, it&#8217;ll break this file up into parts (the size of each part varies according to the .torrent file in question), and check how many of these parts are identical to the original (complete &amp; uncorrupt) ISO and delete those parts that aren&#8217;t. Then it&#8217;ll set about downloading the missing pieces (the ones that were corrupt, but are now gone) from the various peers online, and in a matter of minutes, you&#8217;ll have a complete and fully-functional file, ready for burning or mounting!</p>
<p>Since we&#8217;re nice folks, we&#8217;re going to leave &micro;Torrent on and hidden in the task bar where it won&#8217;t use much bandwidth and close to zero resources and help out the next person that comes along looking for a piece or two &mdash; it&#8217;s only fair, isn&#8217;t it?</p>
<p>Bittorrent has in-built hash-checking which serves multiple purposes: first it authenticates every piece that comes in &#8211; just in case someone is sending you corrupt data or there&#8217;s interference along the way. Then it connects all the hundreds or thousands of little pieces together, and checks to make sure the final result is the same as the original. You&#8217;re protected on multiple layers, don&#8217;t have to download the entire file all over again, and can relax knowing bittorrent&#8217;s got your back!</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/recovering-corrupt-downloads-with-bittorrent/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How To: Open Source + Windows + IIS&#8230; with Stability</title>
		<link>http://neosmart.net/blog/2007/opensource-on-windows-and-iis/</link>
		<comments>http://neosmart.net/blog/2007/opensource-on-windows-and-iis/#comments</comments>
		<pubDate>Wed, 11 Apr 2007 17:14:35 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[ActiveState]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Web Server]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/opensource-on-windows-and-iis/</guid>
		<description><![CDATA[As we mentioned back in March, we switched NeoSmart Technologies over from PHP&#8217;s ISAPI extension for Windows/IIS to Microsoft&#8217;s &#8220;FastCGI for IIS&#8221; implementation instead in hopes of achieving better reliability and uptime during times of heavy load.
Whether you like Windows or not, at some point or the other, you may find yourself using IIS 6 [...]]]></description>
			<content:encoded><![CDATA[<p>As we mentioned back in March, we switched <a href="http://neosmart.net/">NeoSmart Technologies</a> over from <a href="http://www.php.net/">PHP</a>&#8217;s ISAPI extension for Windows/IIS to Microsoft&#8217;s &#8220;<a href="http://www.iis.net/default.aspx?tabid=1000051">FastCGI for IIS</a>&#8221; implementation instead in hopes of achieving better reliability and uptime during times of heavy load.</p>
<p>Whether you like Windows or not, at some point or the other, you may find yourself using IIS 6 or even 7, and then you&#8217;ll be wondering why the open source technologies you&#8217;re using aren&#8217;t as stable as ASP or MSSQL on Windows. However, ever since the release of IIS 6, Microsoft has truly remade Internet Information Services as a real contender in the server market, providing a highly secure, stable, fast, and flexible web server for the masses. IIS 7 (due to ship with Longhorn Server sometime in 2007) is currently showing all the signs of being even better, with complete modularization of all components and a highly extensible, XML-based framework.</p>
<p>We&#8217;re really happy to be able to finally say with all conviction that it really works! This week, NeoSmart Technologies was featured on the homepages of many link aggregation sites (<a href="http://developers.slashdot.org/developers/07/04/10/011220.shtml">including Slashdot</a>) for our <a href="http://neosmart.net/blog/2007/people-dont-hate-making-desktop-apps/">Desktop vs. Web RIAs</a> article. And we&#8217;re glad to say that even with the extreme load, for the entire past week we&#8217;ve had 100.00% uptime with respect to network, IIS, <a href="http://www.mysql.com/">MySQL</a>, and everything else!</p>
<p><span id="more-410"></span>
<p>We can conclude with all certainty that PHP&#8217;s extensions and modules for Windows servers aren&#8217;t to be trusted and should be avoided at all cost for anyone looking to achieve any sort of uptime. The other changes that we did involved removing MySQL as a service and launching it as a standalone app via <a href="http://support.microsoft.com/kb/137890">Microsoft&#8217;s srvany</a> application-service bridge &#8211; it seems that a good portion of the Open Source community has a severe problem dealing with load in a Windows-only environment.</p>
<p>However, for those looking for a &#8220;no-nonsense&#8221; open source approach, we can confidently recommend <a href="http://www.perl.org/">Perl</a>, <a href="http://www.python.org/">Python</a>,&nbsp;and <a href="http://www.postgresql.org/">PostgreSQL</a> as being the way to go. Unlike PHP, Perl is highly stable with or without the ISAPI extensions, and works even better in FastCGI mode &#8211; though that&#8217;s unnecessary given the (minimal) performance hit comparing ISAPI to FastCGI (ISAPI is about 10% faster under load).</p>
<p><a href="http://www.python.org/">Python</a> is similarly very reliable and highly stable extension for IIS, though we haven&#8217;t had the chance to test it under (real-user) extreme load as we have with PHP and Perl. However, in our simulated load extended-testing scenarios, both Python&#8217;s ISAPI and (Fast)CGI implementations worked great and without a flaw on IIS 6.</p>
<p>In running and maintaining the NeoSmart servers, we&#8217;ve come to get a good &#8220;feel&#8221; for the various companies out there catering to webmasters around cyberspace. Some, like PHP, seem to only focus on their &#8220;recommend platforms&#8221; when it comes to stability, and don&#8217;t really care about any other configuration. However,&nbsp;<a href="http://www.activestate.com/">ActiveState</a> gets 5 out of 5 stars when it comes to producing excellent implementations of open source languages, and we can only hope that PHP and others can someday achieve even 80% of what ActiveState has done with their high-reliability, high-performance packages for Windows. ActivePerl and ActivePython are <em>the only way to go</em> if you&#8217;re looking to deploy either scripting language in a Windows environment. And if you want to go with CGI instead of IIS, make sure to use <a href="http://www.iis.net/default.aspx?tabid=1000051">Microsoft&#8217;s FastCGI solution</a> as well, since the 3rd party FastCGI implementation for IIS is very buggy and not under active development.</p>
<p><a href="http://www.postgresql.org/">PostgreSQL</a> undoubtedly wins the performance challenge when it&#8217;s paired up with the likes of MySQL. PostgreSQL is a fully matured RDBMS solution that works just great out of the box on Windows and Linux alike. We&#8217;ve never had any stability or compatibility problems with it on Windows Server 2003, and we highly recommend it for anyone looking to run a minimal-maintenance web server on Windows.</p>
<p>The only problem with this picture is that two most popular open source scripting dependencies are the least reliable out there on Windows. Just why PHP and MySQL don&#8217;t focus on what is fast-becoming a decent-sized chunk of the user market isn&#8217;t very clear to us. However, MySQL is fairly reliable on the majority of systems we tested it on, with the only issues occurring after upgrading to another version, or when the service becomes corrupted and you&#8217;re forced to run it as a standalone application.</p>
<p>We wish we could say the same for PHP, which despite the most popular open source scripting language in use today remains absolutely unreliable and completely indifferent in its attitude towards users of Microsoft&#8217;s operating system and web server. Thankfully, Microsoft&#8217;s FastCGI solution addresses most of the issues present with regards to stability and reliability on Windows, however, the companies attitude as a whole isn&#8217;t what we would consider to be &#8220;user-friendly&#8221; with respect to this issue.</p>
<p>At the end of the day, if you want to use Microsoft Windows Server 2003 and IIS to power your website, ((And you might as well, since Apache on Windows has its own host of problems to worry about and Apache + Windows (WAMP) isn&#8217;t as &#8220;successful&#8221; of a combination as IIS + Windows (WIMP) 9 times out of 10.)) and are looking to deploy open source products on Windows 2003, then you should look for or write your own platforms that use Python or Perl in combination with PostgreSQL for maximum efficiency, minimum downtime, and least headache.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/opensource-on-windows-and-iis/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t unplug your boot drive before installing a new OS! Please!</title>
		<link>http://neosmart.net/blog/2007/dont-do-it-just-dont/</link>
		<comments>http://neosmart.net/blog/2007/dont-do-it-just-dont/#comments</comments>
		<pubDate>Wed, 04 Apr 2007 16:47:48 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Dual Boot]]></category>
		<category><![CDATA[EasyBCD]]></category>
		<category><![CDATA[GRUB]]></category>
		<category><![CDATA[NTLDR]]></category>
		<category><![CDATA[Vista]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/dont-do-it-just-dont/</guid>
		<description><![CDATA[Please, please, we beg you, don&#8217;t do it! Even if it seems logical, like it&#8217;s the right thing to do, we urge you not to change the boot/primary drive, or otherwise disconnect other drives when installing another OS!

Seriously, we had no idea so many people engaged in this activity until EasyBCD started spreading like wild [...]]]></description>
			<content:encoded><![CDATA[<p>Please, please, we beg you, don&#8217;t do it! Even if it seems logical, like it&#8217;s the right thing to do, we urge you <strong>not to change the boot/primary drive, or otherwise disconnect other drives when installing another OS!</strong>
</p>
<p>Seriously, we had no idea so many people engaged in this activity until <a href="http://neosmart.net/dl.php?id=1">EasyBCD</a> started spreading like wild fire. Here&#8217;s a fact for you: 95% <em>of all support requests</em> for EasyBCD in <a href="http://neosmart.net/forums/">our forums</a>&nbsp;come as a <em>direct result</em> of users disconnecting their Windows Vista/XP drive before installing Linux, Vista, BSD, OS X, Windows 2000, XP, etc. It&#8217;s one thing to reinstall the bootloader when you&#8217;re done, and quite another to have to recreate the required boot files to make them point the right drive/partition combo.
</p>
<p><span id="more-404"></span></p>
<p>Here&#8217;s what happens when you install an OS normally: One of the first things it does is copy its bootloader over to the MBR of your primary hard-drive. If it&#8217;s Windows you&#8217;re installing, it&#8217;ll kill the MBR without even asking, rendering your other operating systems (if they exist) unable to boot from their own bootloader. It&#8217;ll then copy its own files over, set up the OS, and if it recognizes and supports the old operating systems, it&#8217;ll add them to its bootloader.
</p>
<p>That&#8217;s why it&#8217;s recommended to install operating systems from oldest to newest; that way the newer one will (almost) always recognize and list the old operating systems. But when you install them in reverse-release order, the old OS doesn&#8217;t recognize the new one, and therefore won&#8217;t/can&#8217;t add boot support for it. But that&#8217;s OK, <strong>it&#8217;s easy to fix!</strong>
</p>
<p>When you <em>disconnect</em> the drive before you install an OS in order to &#8220;avoid&#8221; these issues, <strong>you&#8217;re creating a bigger problem!</strong> Because when you recreate your old drive again, you won&#8217;t be able to boot into one of the operating systems, and in this case, it&#8217;s a hell of a lot harder to get it working again. The reason? Well, the MBR has remained intact, and you have indeed avoided the first issue. But now, when you try to add the newly-installed OS to your bootloader, it&#8217;ll call its (the second one&#8217;s) boot files &#8211; <em>which point to the drive/partition numbers as they were <strong>with the first drive disconnected!</strong></em>
</p>
<p>What happens in this case is, it&#8217;ll call the old bootloader (via a process known as &#8220;chainloading&#8221;) just to find out that the drives, partitions, files, and everything else that the old bootloader was configured to use<em>&nbsp;are no longer present at that location!</em> Since you &#8220;added&#8221; the primary drive back, you&#8217;ve shifted all the drive numbers by 1 (or more), and if you&#8217;re using RAID, it&#8217;s a lot more complicated than that.
</p>
<p>So what&#8217;s the solution? Well, provided you haven&#8217;t already disconnected a drive to install another OS, then just go ahead and install the second OS to the drive &amp; partition of your choice. Then simple boot into that OS, run <a href="http://neosmart.net/dl.php?id=1">EasyBCD</a>&nbsp;and choose to reinstall the appropriate bootloader you need. You don&#8217;t even have to use EasyBCD, just run the necessary tools (like fixmbr or grub-install) for your specific OS, <strong>and you&#8217;re done</strong>.
</p>
<p>At that point, all what&#8217;s left is for you to add a reference to the new OS by adding a line to boot.ini, an entry to EasyBCD, or a listing to menu.lst depending on what system/config you&#8217;re using. Of course all of this can be avoided by installing operating systems in chronological release order, but then again, what&#8217;s life without the headaches?
</p>
<p>But if you <em>did</em> disconnect the drive, you&#8217;re going to have to re-create the boot files for the new OS by hand, whether its going through boot.ini fixing all references to drive and partition numbers or if its having to re-initialize the BCD and reinstall it from scratch. Your best bet is to just plug that drive back in and repair reinstall the OS once more, letting it take care of the details.
</p>
<p>So please, the next time you have that itch to install a second OS, put logic aside for a minute and resist all temptations to disconnect a drive or change the boot order in the BIOS &#8211; it&#8217;s not worth the headache, believe us.</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/dont-do-it-just-dont/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>No More Downtime!</title>
		<link>http://neosmart.net/blog/2007/no-more-downtime/</link>
		<comments>http://neosmart.net/blog/2007/no-more-downtime/#comments</comments>
		<pubDate>Mon, 12 Mar 2007 16:50:17 +0000</pubDate>
		<dc:creator>NeoSmart Technologies</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[NeoSmart Technologies]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[CGI]]></category>
		<category><![CDATA[FastCGI]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[IIS 7]]></category>
		<category><![CDATA[ISAPI]]></category>
		<category><![CDATA[Longhorn-Server]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://neosmart.net/blog/2007/no-more-downtime/</guid>
		<description><![CDATA[It seems that every time we get on Slashdot (or Digg for that matter), we go down. It doesn&#8217;t make a difference just how well prepared we are, what kind of hosting we&#8217;re using, what the application being Slashdotted is, etc. It&#8217;s the unwritten law at NST. But we hope this&#8217;s the last time we [...]]]></description>
			<content:encoded><![CDATA[<p>It seems that every time we get on Slashdot (or Digg for that matter), we go down. It doesn&#8217;t make a difference just how well prepared we are, what kind of hosting we&#8217;re using, what the application being Slashdotted is, etc. It&#8217;s the unwritten law at NST. But we hope this&#8217;s the last time we ever experience downtime for a while. ((Currently, NeoSmart Technologies is running off of a dedicated host (from <a href="http://lunarpages.com">LunarPages</a>) with eAccelerator, MySQL, WP Cache, and some more optimization goodiness.))
</p>
<p>Why? We&#8217;ve left PHP. Well, not exactly. It seems that PHP doesn&#8217;t give a damn about Windows users. PHP has repeatedly stated that &#8220;we&#8217;re aware of [....] serious stability issues on Windows&#8230;&#8221; But they&#8217;ve done nothing about it for almost a year now. Their advice is to abandon (their own) PHP ISAPI connector and instead fallback to the ages-old and incredibly slow PHP CGI solution.
</p>
<p><span id="more-389"></span></p>
<p>A couple of years ago, a more efficient &#8220;version&#8221; of CGI, aptly dubbed &#8220;<a href="http://www.fastcgi.com/">FastCGI</a>,&#8221; was invented. Theoretically, FastCGI retains the stability and reliance of the old CGI method, but is implemented via its own (actually working) ISAPI/NSAPI extension and incorporates some changes in the lifeline of a binary. But in practice, the original <a href="http://www.caraveo.com/fastcgi/">FastCGI for IIS implementation</a> is outdated and almost as unreliable as ISAPI on IIS.
</p>
<p>At NeoSmart Technologies, we&#8217;ve been using the original PHP ISAPI implementation to get our various PHP-powered scripts up and running. It&#8217;s proven to be <a href="http://neosmart.net/blog/2006/20-hours-of-outage/">as unreliable as only badly-coded software can be</a>, but falling back to CGI as a &#8220;solution&#8221; just wasn&#8217;t going to happen. But now we&#8217;ve come across a much un-mentioned FastCGI implementation created by Microsoft themselves in an effort to increase the reliability of PHP on IIS since PHP weren&#8217;t doing their jobs.
</p>
<p>The not-so-sharply-named &#8220;<a href="http://www.iis.net/default.aspx?tabid=1000051">FastCGI for IIS</a>&#8221; plugin seems to be the real deal. At the moment, it supports IIS 5 &amp; 6 via the now-dying ISAPI infrastructure &#8211; and is a complete modular implementation for IIS 7. Unlike the other FastCGI implementations for IIS, this one really works. It load-balances requests across multiple threads (just like CGI does), and properly recycles them when threads end (just like CGI doesn&#8217;t).
</p>
<p>Most importantly, it&#8217;s fast, lite, &amp; trouble-free. Only time can tell, but this does seem like the real McCoy, if you will. For the past 2 days NST has been available only off-and-on thanks to Slashdot (linking to <a href="http://neosmart.net/blog/2006/vistas-hideous-wakeup-support/">this story</a>) &#8211; and PHP&#8217;s ISAPI extension just can&#8217;t handle all those requests, and needed a reset every hour. We&#8217;ve just switched to FastCGI for IIS, and so far, so good!
</p>
<p>Besides just the facts and resources currently sitting on our server, FastCGI for IIS spews good &#8220;vibes&#8221; all over the place. It&#8217;s nothing tangible, and we obviously won&#8217;t have any numbers until the next Slashdot effect comes in, but we&#8217;re going to go ahead and advise that anyone frustrated with PHP&#8217;s lack of stability and uptime on Windows servers (and IIS in particular) should switch right away.
</p>
<p>It&#8217;s really sad that PHP ignores a huge portion of the market. Sure, Linux is a great server product, and Apache really is wonderful (after all, <a href="http://www.betanews.com/article/IIS_70_Learns_a_Few_Tricks_from_Apache/1126807433">Microsoft has admitted</a> to using Apache&#8217;s modular structure as their inspiration for IIS 7!) &#8211; but IIS 6 (and 7 too) are decent web servers in their own right. It doesn&#8217;t make sense that they should serve Perl, Python, and ASP.NET 2.0 so well, and just stumble head-over-heels when it comes to PHP. ((Some of the guys behind NeoSmart Technologies are currently working on a Web 2.0 startup, and it sure as hell won&#8217;t be using PHP!))</p>
]]></content:encoded>
			<wfw:commentRss>http://neosmart.net/blog/2007/no-more-downtime/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
