<?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>Myoddweb.com &#187; development</title>
	<atom:link href="http://www.myoddweb.com/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.myoddweb.com</link>
	<description>Myoddweb.com Home of Courseplanner - Flight planner for Flight Simulator</description>
	<lastBuildDate>Tue, 03 May 2011 09:27:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>php_mcrypt for php 5.3.x</title>
		<link>http://www.myoddweb.com/2011/05/03/php_mcrypt-for-php-5-3-x/</link>
		<comments>http://www.myoddweb.com/2011/05/03/php_mcrypt-for-php-5-3-x/#comments</comments>
		<pubDate>Tue, 03 May 2011 09:27:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[mcrypt]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php_mcrypt]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=215</guid>
		<description><![CDATA[The other day I upgraded my dev box to php 5.3.6, (from 5.2.x), and I got frustrated because I could not get php_mycrypt.dll to load. The reason is simply because it is bundled in php 5.3.x, (for windows at least). I suspect it is also built in with the unix versions as well.]]></description>
			<content:encoded><![CDATA[<p>The other day I upgraded my dev box to php 5.3.6, (from 5.2.x), and I got frustrated because I could not get php_mycrypt.dll to load.</p>
<p>The reason is simply because it is bundled in php 5.3.x, (for windows at least).<br />
I suspect it is also built in with the unix versions as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2011/05/03/php_mcrypt-for-php-5-3-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Install MCrypt for PHP on Windows</title>
		<link>http://www.myoddweb.com/2010/11/18/install-mcrypt-for-php-on-windows/</link>
		<comments>http://www.myoddweb.com/2010/11/18/install-mcrypt-for-php-on-windows/#comments</comments>
		<pubDate>Thu, 18 Nov 2010 13:13:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[mcrypt]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpinfo]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=206</guid>
		<description><![CDATA[How to enable mcrypt/libmcrypt for PHP on a windows webserver. Also explain how to create a phpinfo file to get the website values.]]></description>
			<content:encoded><![CDATA[<p>There are many sites around explaining how to install MCrypt for windows but none seem very straight forward.<br />
I have <a title="install apache php and mysql on windows" href="http://www.myoddweb.com/2010/11/11/install-apache-php-and-mysql-on-windows/">PHP installed on a windows development machine</a> and I need MCrypt installed.</p>
<p>The default installation might not have <a href="http://sourceforge.net/projects/mcrypt/">mcrypt </a>or you might have missed it shomehow&#8230;</p>
<p>If that happens all you need to do it</p>
<ol>
<li>Go to the <a href="http://www.php.net/downloads.php" target="_blank">php download</a> website and download the windows binary package, (not the installer).</li>
<li>Unzip the file in a folder, (it should create a folder called something like <em>php-5.x.yy-Win32</em>, depending on the version number of php you got.</li>
<li>In that folder there should be a file called <em>&#8220;libmcrypt.dll&#8221;, </em>copy the file to your php extension folder, (see below if you don&#8217;t know where that is).</li>
<li>In that folder there should also be another folder called &#8220;ext&#8221;, open it and copy the file <em>&#8220;php_mcrypt.dll&#8221;</em> to your php extension folder.</li>
<li>edit your php.ini file, (see below if you don&#8217;t know where that is), and add the line:<br />
<span style="color: #3366ff;">&#8230;<br />
;;;;;;;;;;;;;;;;;;;;;;<br />
; Dynamic Extensions ;<br />
;;;;;;;;;;;;;;;;;;;;;;<br />
&#8230;<br />
<em>extension=php_mcrypt.dll</em><br />
&#8230;<br />
<span style="color: #000000;">Look for other &#8220;</span></span><span style="color: #000000;">extension=&#8230;</span><span style="color: #3366ff;"><span style="color: #000000;">&#8221; to find where to add this line.</span><br />
</span></li>
<li>Restart your web server, with Apache for example click on the icon on the task bar and select &#8216;restart&#8217;.</li>
</ol>
<h3>Where are my php extensions?</h3>
<p>Normally they are located in your program files directory, something like &#8220;<em>C:\Program Files\PHP\</em>&#8220;, if you are using a non english version of Windows then the name might be different.</p>
<p>If it is not there then create a <em><strong>phpinfo.php</strong></em> test file and look for the path in the various variables, (look for the variables <em>extension_dir</em> as well as <em>PHPRC</em>).</p>
<h3>Where is my php.ini file?</h3>
<p>Same as above, normally they are located in your program files directory, something like &#8220;<em>C:\Program Files\PHP\</em>&#8220;, if you are using a non english version of Windows then the name might be different.</p>
<p>If it is not there then create a <em><strong>phpinfo.php</strong></em> test file and look for the path in the various variables, (look for the value &#8220;<em>Loaded Configuration File</em>&#8220;<em></em>).</p>
<h3>What should my phpinfo.php file look like?</h3>
<p>Open a blank file with your favourite text editor and type.</p>
<p><span style="color: #3366ff;">&lt;?php<br />
phpinfo();<br />
?&gt;<br />
</span></p>
<p>Save the file as <em>phpinfo.php</em> in your web folder and it should show you all the information you need about your php installation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2010/11/18/install-mcrypt-for-php-on-windows/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Install, Apache, php and MySQL on Windows</title>
		<link>http://www.myoddweb.com/2010/11/11/install-apache-php-and-mysql-on-windows/</link>
		<comments>http://www.myoddweb.com/2010/11/11/install-apache-php-and-mysql-on-windows/#comments</comments>
		<pubDate>Thu, 11 Nov 2010 13:08:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=195</guid>
		<description><![CDATA[Install Apache, PHP and MySQL on a windows box for development.]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.myoddweb.com%2F2010%2F11%2F11%2Finstall-apache-php-and-mysql-on-windows%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden;  width:450px; height:65px"></iframe><br />
The other day I was looking for a tutorial to install Apache, php and MySQL on Windows and I wasn&#8217;t really able to find anything that cover most basic issues.<br />
I don&#8217;t want to replace my current webserver, (IIS), I want to install Apache next to</p>
<h3>Basic notes before we start.</h3>
<ol>
<li>You <span style="text-decoration: underline;"><strong>must</strong></span> be the Administrator on the machine.</li>
<li>This is <span style="text-decoration: underline;"><strong>not</strong></span> a how-to install a website on a server, this is how to install a website on your own development machine, (so some server security settings will be ignored).</li>
<li>It is best to fist follow all the steps as I have listed them and <em><span style="text-decoration: underline;">then</span></em> make changes that fit your needs.</li>
<li>Each step has a &#8216;test&#8217; to make sure it works, if it did not then don&#8217;t go any further, it will only make things worse. Installing PHP will not magically make Apache work.</li>
<li>On an English version of Windows all programs are installed in the <em>c:\program files\</em> directory, but it it called something else in other languages, (the variable is <em>%programfiles%</em>).<br />
If you are using a 64 bit machine then the folder is different for 86 bit applications.<br />
By default the installed will direct you to the program files folder, <span style="text-decoration: underline;">just pay attention to where that folder is</span>.</li>
<li>I used port number 8001, you can choose another number if you want, (but not 80 or 8080 just yet).</li>
<li>If you have some weird and wonderful firewall you might want to turn it off during the installation, turn it back one once you know it is working. If it does not work with the firewall then you know what needs to be fixed.</li>
<li>Turn off your Anti-virus as well if you don&#8217;t think it is clever enough to recognize Apache, PHP or MySQL.</li>
<li>Make a note of all the folders you install things in. Don&#8217;t just blindly press &#8216;next&#8217;, &#8216;next&#8217;, &#8230;</li>
</ol>
<h3>1) Install Apache</h3>
<p>Go to the <a title="Apache download." href="http://httpd.apache.org/download.cgi" target="_blank">Apache website and download</a> the latest version, don&#8217;t get the &#8216;Alpha&#8217; or &#8216;Beta&#8217; version but rather get the one labelled, &#8220;the best available version&#8217;. I got version  2.2.17, (without crypto).</p>
<ol>
<li>Run the install and accept all the basic settings.</li>
<li>in Apache folder, (<em>c:\Program Files\Apache Software Foundation\Apache2.2\</em>), look for the http.conf file and edit it, (it is a normal text file).
<ol>
<li>Change the <strong>Listen</strong> value:<br />
<span style="color: #3366ff;">&#8230;<br />
#<br />
# Change this to Listen on specific IP addresses as shown below to<br />
# prevent Apache from glomming onto all bound IP addresses.<br />
#<br />
#Listen 12.34.56.78:80<br />
</span><strong><span style="color: #3366ff;">Listen 8001<br />
&#8230;</span><br />
</strong></li>
<li>And the change the <strong>ServerName</strong> value:<br />
<span style="color: #3366ff;">&#8230;<br />
# If your host doesn&#8217;t have a registered DNS name, enter its IP address here.<br />
#<br />
#ServerName &lt;somedomain&gt;:80</span><span style="color: #3366ff;"><strong><span style="color: #3366ff;"><br />
ServerName localhost:8001<br />
&#8230;</span></strong></span></li>
</ol>
</li>
<li>Double click on the Apache icon on the task bar, that will bring up the &#8216;Apache service monitor&#8217;<br />
The server is running, (if you don&#8217;t have IIS installed), or not running, (if there was an issue with IIS).</li>
<li>Select the [Start] or [Restart] button, it should then start ok &#8230;<br />
If it does not start there is a problem, double check the settings. If you are certain that the settings are correct try another port. Instead of 9001 for example, try 8001 or something like that.</li>
<li>Open your web browser and navigate to <a title="Your local apache website." href="http://localhost:8001/" target="_blank">http://localhost:8001/</a> you should get a simple message &#8220;<em><strong>It works!!!</strong></em>&#8220;</li>
<li>Change the location of your website to something more developer  friendly.<br />
in <em>C:\Program Files\Apache Software Foundation\Apache2.2\conf\http.conf</em> change:<br />
<span style="color: #3366ff;"> &#8230;<br />
# documents. By default, all requests are taken from this directory, but<br />
# symbolic links and aliases may be used to point to other locations.<br />
#<br />
<strong> DocumentRoot &#8220;c:/website&#8221;</strong><br />
&#8230;<br />
#<br />
# This should be changed to whatever you set DocumentRoot to.<br />
#<br />
<strong> &lt;Directory &#8220;c:/website&#8221;&gt;</strong><br />
&#8230;</span></li>
<li>Don&#8217;t add a &#8216;/&#8217; at the end of the path, so don&#8217;t write &#8216;<em>&lt;Directory &#8220;<strong>c:/website/</strong>&#8220;&gt;</em>&#8216;</li>
<li>Create a folder <em><strong>c:/website/</strong></em>, don&#8217;t put any files or anything in it.<em><strong><br />
</strong></em></li>
<li>Restart the Apache server again, (on the task bar, select the apache server, &#8220;Open Apache Monitor&#8221;, select [Start] or [Restart], it should then start ok&#8230;).</li>
<li>Open your web browser and navigate to <a href="http://localhost:8001/" target="_blank">http://localhost:8001/</a> you should get a message &#8220;<em><strong>Index of /</strong></em>&#8220;</li>
</ol>
<h3>2) Install PHP</h3>
<p>Go to the <a title="PHP Download " href="http://php.net/downloads.php" target="_blank">php.net website and download</a> the latest stable version. Get the windows installer, I got version 5.2.14.</p>
<ol>
<li>Run the install and accept all the default settings.</li>
<li>During the install you will be prompted to select a server, select <strong>Apache 2.2</strong></li>
<li>It will then ask you for the location of the Apache configuration file, select &#8220;<em>C:\Program Files\Apache Software Foundation\Apache2.2\http.conf</em>&#8220;<strong><br />
</strong></li>
<li>After the install, double check that the Apache configuration file was updated properly.<br />
In <em>C:\Program Files\Apache Software Foundation\Apache2.2\http.conf</em> at the end of the file the php installer will have added<br />
<span style="color: #3366ff;">&#8230;<br />
#BEGIN PHP INSTALLER EDITS &#8211; REMOVE ONLY ON UNINSTALL<br />
PHPIniDir &#8220;C:/Program Files/PHP/&#8221;<br />
LoadModule php5_module &#8220;C:/Program Files/PHP/php5apache2_2.dll&#8221;<br />
#END PHP INSTALLER EDITS &#8211; REMOVE ONLY ON UNINSTALL<br />
&#8230;</span></li>
<li>Edit the php.ini file to display all errors. By default the file is located in &#8220;<em><strong>C:/Program Files/PHP/</strong></em>&#8221;<br />
Replace, &#8220;<em>display_errors = Off</em>&#8221; with &#8220;<em>display_errors = On</em>&#8220;.<br />
<span style="color: #3366ff;">&#8230;<br />
; To output errors to STDERR with CGI/CLI:<br />
;display_errors = &#8220;stderr&#8221;<br />
;<br />
; Default<br />
;<br />
display_errors = On<br />
&#8230;</span></li>
<li>One more time, restart the Apache server, (see above).</li>
</ol>
<h4>2.1) Create a php test file.</h4>
<ol>
<li>Open a blank document</li>
<li><span style="color: #3366ff;">&lt;?php<br />
echo &#8220;Hello from my website&#8221;<br />
?&gt;</span></li>
<li>Save the document as &#8220;index.php&#8221; in your website root folder, (c:/website)</li>
<li>go to <a title="php firs test file." href="http://localhost:8001/index.php" target="_blank">http://localhost:8001/index.php</a></li>
<li> You should see &#8220;<strong>Hello from my website</strong>
<ol>
<li>If you see the code () then it means you did not restart the Apache service</li>
<li>if you see nothing there might be a type in your code.</li>
<li>Make sure that you have nothing before &#8221;&lt;?php&#8217; and after &#8216;?&gt;&#8217;</li>
</ol>
</li>
</ol>
<h4>2.2 ) Make index.php the default</h4>
<ol>
<li>In Apache configuration file, (&#8220;C:\Program Files\Apache Software Foundation\Apache2.2\conf&#8221;), Update <em><strong>DirectoryIndex</strong></em> and add add <em>index.php<br />
</em><span style="color: #3366ff;">&#8230;<br />
#<br />
# DirectoryIndex: sets the file that Apache will serve if a directory<br />
# is requested.<br />
#<br />
&lt;IfModule dir_module&gt;<br />
DirectoryIndex index.html index.php<br />
&#8230;</span></li>
<li>The order is important, if you have both, <em>index.html <span style="text-decoration: underline;">and</span> index.php</em> in your website then index.html will be displayed.</li>
<li>Restart the Apache server, &#8220;Open Apache Monitor&#8221;, select [Start] or [Restart], it should then start ok&#8230;</li>
<li> Go to <a title="Your local apache website." href="http://localhost:8001/" target="_blank">http://localhost:8001/</a> and you should see &#8220;<strong>Hello from my website</strong>&#8221;
<ol>
<li>if you see &#8220;<strong>Index of /</strong>&#8221; you didn&#8217;t restart the Apache service</li>
<li>if you don&#8217;t see &#8220;<strong>Hello from my website</strong>&#8221; or &#8220;<strong>Index of /</strong>&#8220;, do you have an index.html file that is showing?</li>
</ol>
</li>
</ol>
<h3>3) Install MySQL</h3>
<p>Go to the <a title="MySQL Download" href="http://dev.mysql.com/downloads/mysql/" target="_blank">MySQL website and download</a> the latest stable version. Get the windows installer, I got version 5.1.52 You can get version 32bit or 64bit. Get the recommended, &#8216;Essential&#8217;  download.</p>
<p>For version 5.2, (and earlier), you also need to <a title="MySQL/php connector" href="http://mysql2.mirrors-r-us.net/downloads/connector/php/index.html" target="_blank">download mysql extension (PHP 5.2.0)</a>.</p>
<ol>
<li>Do the typical install and accept all settings.</li>
<li>The last step is to configure</li>
</ol>
<h4>3.1) Configure the MySQL server now.</h4>
<p>Select the following, (mostly default), options</p>
<ol>
<li>Detailed configuration.</li>
<li>Developer machine.</li>
<li>Multifunctional database</li>
<li>Select/Edit &#8220;<em>c:\website\data\</em>&#8221; rather than the default, (this is easier to locate and/or port to another machine).</li>
<li>DSS/OLAP server instance configuration.</li>
<li>port number 3306.</li>
<li>Best support for Multilingualism, (you will need it at some stage and it does not harm even if you think you won&#8217;t need it).</li>
<li>Service name &#8220;MySQL&#8221;.</li>
<li>Set the root password, (<span style="text-decoration: underline;">and write it down!</span>). Even for development it is good practice to use a strong password.</li>
<li>Press the &#8216;Execute &#8230;&#8217;, (takes a bit of time). You should get no errors.</li>
</ol>
<p>If you get an error on the last step it is almost because of a security issue, (a Windows/Firewall/Anti virus issue).</p>
<h4>3.2 Tell PHP about MySQL.</h4>
<p>In the old days PHP would install the MySQL extension by default, in 5.x that changed and you had to download it. In 5.3 it is bundled again.<br />
Either way, make sure that PHP knows how to work with PHP, the following steps might already be done for you by the installer(s), if it is don&#8217;t overwrite the settings.</p>
<ol>
<li>Unzip the mysql extension you downloaded earlier, (<a href="http://dev.mysql.com/downloads/mysql/" target="_blank">http://dev.mysql.com/downloads/mysql/</a>) and copy them to your <strong>php</strong> directory.<br />
By default located in <em><strong>c:\program files\php\<br />
</strong></em>There should be 2 files, <em>libmysql.dll</em> and <em>php_mysql.dll</em>, copy them both.<br />
<em>If the files already exist, do not overwrite those files.</em></li>
<li>Edit your php.ini file (By default located in <em>c:\program files\php\php.ini</em>)<br />
Add the mysql extensions.<br />
<span style="color: #3366ff;">&#8230;<br />
;;;;;;;;;;;;;;;;;;;;;;<br />
; Dynamic Extensions ;<br />
;;;;;;;;;;;;;;;;;;;;;;<br />
&#8230;<br />
extension=php_mysql.dll<br />
&#8230;</span></li>
<li>On the task bar, select the Apache server, &#8220;Open Apache Monitor&#8221;, select [Start] or [Restart], it should then start ok&#8230;
<ol>
<li>If Apache does not restart, , did you copy both dlls or just one?</li>
<li>Did you get the right files, (on the download site, did you get the right MySQL version and right php version)?</li>
<li>Did you download the mysql<strong><span style="text-decoration: underline;">i</span></strong> extension or the mysql extension, (note the extra &#8216;i&#8217;)?</li>
</ol>
</li>
</ol>
<h4>3.3 Create a mysql/php test files.</h4>
<ol>
<li>Open/create a new, empty file.</li>
<li>Type the following<br />
<span style="color: #3366ff;">&lt;?php<br />
// Report all PHP errors (see changelog)<br />
error_reporting(E_ALL);</p>
<p>$con = mysql_connect(&#8216;localhost&#8217;,'root&#8217;,&#8217;<strong><span style="color: #ff0000;">&lt;yourpassword&gt;</span></strong>&#8216;);</p>
<p></span> <span style="color: #3366ff;"><br />
if (!$con)<br />
{<br />
die(&#8216;Could not connect: &#8216; . mysql_error());<br />
}<br />
echo &#8220;Connected to database!!&#8221;;<br />
?&gt;</span></li>
<li>Save the file <em>&#8220;c:\website\connect.php</em>&#8220;</li>
<li>Go to your site and check that you are connected to your MySQL database<br />
<a title="Check database connection" href="http://localhost:8001/connect.php" target="_blank">http://localhost:8001/connect.php</a></p>
<ol>
<li>If you get &#8216;Could not connect&#8217;, did you put the right user name and password, (replace <strong><span style="color: #ff0000;">&lt;yourpassword&gt;</span></strong>)?</li>
<li>If you see nothing at all check your php.ini file to display errors, (see above).</li>
<li>If you see &#8220;Call to undefined function mysql_connect()&#8221; check your php.ini file for mysql settings. If they look ok, restart Apache again and make sure it has no errors.</li>
</ol>
</li>
</ol>
<h3>Concusion</h3>
<p>This should be it, your web server should be up and running, you can now restart your firewall, check that the website is still running, then restart your anti virus.</p>
<p>Once all this is running you can play with various settings, remember that you, (almost always), need to restart Apache once you made a change to the http.conf or php.ini files.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2010/11/11/install-apache-php-and-mysql-on-windows/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Adding crash report information to Courseplanner</title>
		<link>http://www.myoddweb.com/2010/05/28/adding-crash-report-information-to-courseplanner/</link>
		<comments>http://www.myoddweb.com/2010/05/28/adding-crash-report-information-to-courseplanner/#comments</comments>
		<pubDate>Fri, 28 May 2010 08:35:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Beta]]></category>
		<category><![CDATA[Courseplanner]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[crash]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=163</guid>
		<description><![CDATA[Adding crash report to Courseplanner.]]></description>
			<content:encoded><![CDATA[<p>I finally got around adding a proper crash report to Courseplanner, I do get a couple of reports every months and every time I am faced with the same problem of not having enough information. Thankfully it does not happen very often, but when it does I need to gather as much information as possible.</p>
<p>I am looking at <a title="CrashRpt" href="http://www.myoddweb.com/courseplanner/privacy-policy-cp/" target="_blank">CrashRpt</a>, I used that piece of software a while ago, (when they were on Codeproject) and I was quite happy with it.<br />
Because it is open source and written it C++, it makes it very easy to incorporate in Courseplanner.</p>
<p>I am also looking at other kinds of Crash handling software,  especially <a href="http://code.google.com/p/google-breakpad/">Google</a> and <a href="https://developer.mozilla.org/en/Crash_reporting">Firefox</a>, not  because I think they are better, but simply because I would be foolish  to ignore such big names.</p>
<p>One of the most attractive option they have is the possibility to send the report directly to the website, in the past users were reluctant to send an email, or, in worse cases the emails would be trapped in some spam filter.</p>
<p>I also created a <a href="http://www.myoddweb.com/courseplanner/privacy-policy-cp/">privacy policy page</a>, it basically says that I have no plans to pass any information to any third party. Currently the policy is limited to the crash report, but at some stage I will have to update it to include registration and the forum.</p>
<p>I am planning on releasing it to the beta team later today, (my ftp  server is down for some reason).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2010/05/28/adding-crash-report-information-to-courseplanner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Wine on ubuntu</title>
		<link>http://www.myoddweb.com/2010/04/20/installing-wine-on-ubuntu/</link>
		<comments>http://www.myoddweb.com/2010/04/20/installing-wine-on-ubuntu/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 10:59:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Courseplanner]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Wine]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=149</guid>
		<description><![CDATA[How to install Wine on ubuntu, these are just a few basic steps.]]></description>
			<content:encoded><![CDATA[<p>I was playing around with using Courseplanner on an old unix machine of mine.  Of course you cannot just run a windows application on a ubuntu machine, but thankfully <a href="http://en.wikipedia.org/wiki/Wine_%28software%29">Wine</a> allows you to run such applications.</p>
<p>But be warned a lot of issues have been reported, Wine does not work 100% all the time.<br />
So, before I venture down the road of installing <a title="Courseplanner on ubuntu" href="http://www.myoddweb.com/courseplanner">Courseplanner</a> on my ubuntu machine I need to venture down the road of installing Wine.</p>
<p>Start the terminal server (Applications &gt; Accessories &gt; Terminal).<br />
At the command prompt, type</p>
<blockquote><p>sudo apt-get install wine<br />
[sudo] password for <em>username</em>:</p></blockquote>
<p>Enter your password, and then wait for the relevant packages to be downloaded, (only 19Mb but for me it took a bit of time for some reason).</p>
<p>When this is done&#8230; there is nothing else to do, you can type&#8230;</p>
<blockquote><p>wine &#8211;version</p></blockquote>
<p>To get the version number, but to be fair, this won&#8217;t help you much <img src='http://www.myoddweb.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Next I need to install Coursplanner&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2010/04/20/installing-wine-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The &#8220;Hello Dolly&#8221; of piger</title>
		<link>http://www.myoddweb.com/2009/11/25/the-hello-dolly-of-piger/</link>
		<comments>http://www.myoddweb.com/2009/11/25/the-hello-dolly-of-piger/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 21:01:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Piger]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=145</guid>
		<description><![CDATA[I created a small c++ plugin to show the basic architecture of the piger plugin. WordPress has a very simple plugin that they called &#8216;Hello Dolly&#8217;, this plugin does not really do much apart from randomly displaying a lyric from &#8220;Hello Dolly&#8221; First things first, download the latest source code of the plugin and we [...]]]></description>
			<content:encoded><![CDATA[<p>I created a small c++ plugin to show the basic architecture of the piger plugin.<br />
<a href="http://wordpress.org/">WordPress</a> has a very simple plugin that they called &#8216;Hello Dolly&#8217;, <a href="http://codex.wordpress.org/Plugins#Default_Plugins">this plugin</a> does not really do much apart from randomly displaying a lyric from &#8220;<a href="http://en.wikipedia.org/wiki/Hello,_Dolly!_%28song%29">Hello Dolly</a>&#8221;</p>
<p>First things first,<a href="https://sourceforge.net/projects/unixpiger/files/"> download the latest source code</a> of the plugin and we will talk about each files in a bit more details.</p>
<p><strong>The file type</strong>:<br />
The file is nothing more than a DLL with an <em>&#8216;.amp&#8217;</em> extension. So when you create your plugin make sure that the output file has a <em>&#8216;.amp&#8217;</em> extension.</p>
<p><strong>The files to include</strong>:<br />
You need to include 2 files, a header(h) file and a library(.lib) file.<br />
<span id="more-145"></span></p>
<pre>// support for PluginAPI
#include "../../api/amplugin/amplugin.h"

// add the libs
#ifdef _DEBUG
#pragma comment(lib, "../../debug/amplugin.lib" )
#else
#pragma comment(lib, "../../release/amplugin.lib" )
#endif</pre>
<p>And in the cpp file, the one and only function.</p>
<pre>PLUGIN_API
AM_RESPONSE am_Msg( AM_MSG msg, WPARAM wParam, LPARAM lParam  )
{
  return AM_RESP_NOT_SUPPORTED;
}</pre>
<p>Some important messages&#8230;</p>
<pre>...
  <span style="color: #3366ff;">switch</span>( msg )
  {
  <span style="color: #3366ff;">case </span>AM_MSG_INIT:   <span style="color: #339966;">// called when the plugin is first loaded.</span>
  <span style="color: #3366ff;">case </span>AM_MSG_DEINIT: <span style="color: #339966;">// called when we are closing the app</span>
  <span style="color: #3366ff;">case </span>AM_MSG_MAIN:   <span style="color: #339966;">// called when one, (or more), of the commands we </span>
                      <span style="color: #339966;">// registered are called.</span>
  }</pre>
<p>When the message &#8216;AM_MSG_INIT&#8217; is called you can add an action using the &#8216;<em>addAction( &#8230; )</em>&#8216; function.</p>
<p>AM_MSG_MAIN will be called when that action is entered.</p>
<p><strong>Things to note</strong>:</p>
<ul>
<li>Place your plugin in the __in folder, (normally found in %appdata%\MyOddWeb\ActionMonitor_d\RootCommands\__in).</li>
<li><strong>Don&#8217;t mix debug and release builds</strong>, to debug your plugin you will need to run it again the debug version of Action monitor, (and the folder is %appdata%\MyOddWeb\<strong>ActionMonitor_d</strong>\RootCommands\__in).</li>
<li>Have a look at the file &#8220;<span style="color: #3366ff;">#include</span><span style="color: #800000;"> &#8220;am_plugins.h&#8221;</span>&#8220;, it explains what most messages do.</li>
<li>Call <strong>[Caps lock] this.reload</strong> to reload <strong><em>everything</em></strong>.</li>
<li>Download <a href="https://sourceforge.net/projects/unixpiger/files/">the plugin code here</a>.</li>
</ul>
<p>Visit <a href="http://forum.myoddweb.com">the forum</a> if you have any technical questions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2009/11/25/the-hello-dolly-of-piger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Piger fourm</title>
		<link>http://www.myoddweb.com/2009/11/18/new-piger-fourm/</link>
		<comments>http://www.myoddweb.com/2009/11/18/new-piger-fourm/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 12:10:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Piger]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=142</guid>
		<description><![CDATA[I finally got around to creating a new forum for Piger, the main purpose of Piger is to make my life easier . I hate using my keyboard more than I have to, and I hate having to do the same thing over and over again. So a while ago, (a year ago I think), [...]]]></description>
			<content:encoded><![CDATA[<p>I finally got around to creating a <a href="http://forum.myoddweb.com/viewforum.php?f=9">new forum</a> for <a href="https://sourceforge.net/projects/unixpiger/">Piger</a>, the main purpose of Piger is to make my life easier <img src='http://www.myoddweb.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I hate using my keyboard more than I have to, and I hate having to do the same thing over and over again.</p>
<p>So a while ago, (a year ago I think), I created a small tool that simply takes your keyboard input and runs a pre-programmed script accordingly, it can be anything, from launching calculator to login into your favourite website using another browser that your favourite one.</p>
<p>You can write your scripts in <a href="http://en.wikipedia.org/wiki/Lua_(programming_language)">LUA</a>, C++, <a href="http://en.wikipedia.org/wiki/Python_(programming_language)">Python</a>, or even DOS (batch).</p>
<p><strong>Note</strong>, by default the tool does not write scripts for you, it comes with a few basic scripts but nothing too exiting. So please use <a href="http://forum.myoddweb.com/viewforum.php?f=9">the forums</a> if you have any scripting questions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2009/11/18/new-piger-fourm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Install Ubuntu 9 on Virtual PC 2007 &#8211; part trois</title>
		<link>http://www.myoddweb.com/2009/09/22/install-ubuntu-9-on-virtual-pc-2007-part-trois/</link>
		<comments>http://www.myoddweb.com/2009/09/22/install-ubuntu-9-on-virtual-pc-2007-part-trois/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 08:02:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Virtual PC]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=129</guid>
		<description><![CDATA[There is one last problem with the Ubuntu install, when you update the Kernel it will remove the noreplace-paravirt vga=771 that you added. This is probably because Ubuntu assumes you made a mistake. Whatever the reason you need to update the menu.lst file. First of all lets make sure that you read all the previous [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.myoddweb.com%2F2009%2F09%2F22%2Finstall-ubuntu-9-on-virtual-pc-2007-part-trois%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden;  width:450px; height:65px width:450px; height:65px"></iframe><br />
There is one last problem with the Ubuntu install, when you update the Kernel it will remove the <em>noreplace-paravirt vga=771</em> that you added.</p>
<p>This is probably because Ubuntu assumes you made a mistake. Whatever the reason you need to update the <em>menu.lst</em> file.</p>
<p>First of all lets make sure that you read all the previous articles so we are all talking about the same thing.</p>
<ol>
<li><a href="http://www.myoddweb.com/2009/07/03/install-ubuntu-9-on-virtual-pc-2007/">Install Ubuntu 9 on Virtual PC 2007</a>.</li>
<li><a href="http://www.myoddweb.com/2009/07/04/install-ubuntu-9-on-virtual-pc-2007-part-deux/">Update the menu.lst after install</a>.</li>
<li>Update the <em>menu.lst</em> again after updating the kernel.</li>
</ol>
<p>From time to time Ubuntu will update various software, (or you can do it your self,  <em>System &gt; Administration &gt; Update Manager</em>. Any one of those update might be a brand new kernel update, in that case you will need to edit the menu all over again.</p>
<ol>
<li>Open the terminal , (‘<em>Applications&gt;Accessories&gt;Terminal’)</em></li>
<li>At the cursor type ‘<em>gksudo gedit /boot/grub/menu.lst</em>‘, (without the quotes), press enter.</li>
<li>Enter your password if you have to.</li>
<li>Look for the first boot option
<pre>## ## End Default Options ##
title ...
uuid ...
kernel ...</pre>
</li>
<li>look for the entry that mentions <em>&#8216;<em>Kernel&#8217;</em></em>.</li>
<li>Add &#8216;<em>noreplace-paravirt</em>‘ at the end of it.</li>
<li>Save the file</li>
<li>Close the editor.</li>
<li>Tell Ubuntu that you changed the file:
<pre>sudo update-grub</pre>
</li>
<li>Reboot and everything should be back to normal &#8230; until you update again.</li>
</ol>
<p><strong>NB</strong>: If you cannot boot at all, (because your screen is black or throwing some errors), simply follow the same instructions <a href="http://www.myoddweb.com/2009/07/03/install-ubuntu-9-on-virtual-pc-2007/">in the first article</a> on booting up Ubuntu.</p>
<p><strong>NB2: </strong>If you still have a question, feel free to go <a href="http://forum.myoddweb.com/viewforum.php?f=6">to the forum</a> and I&#8217;ll try to help as much as I can.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2009/09/22/install-ubuntu-9-on-virtual-pc-2007-part-trois/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Back in the flying seat</title>
		<link>http://www.myoddweb.com/2009/08/23/back-in-the-flying-seat/</link>
		<comments>http://www.myoddweb.com/2009/08/23/back-in-the-flying-seat/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 16:45:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Courseplanner]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[automatic flight]]></category>
		<category><![CDATA[waypoint]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=123</guid>
		<description><![CDATA[I finally managed to get back to flying a little over the week-end, I am working on some new features for Courseplanner, namely the ability to turn into a waypoint, (or past a waypoint depending on the one you want to visit). All the coding is done, I am just testing with various aircraft if [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_122" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-122" title="tracking" src="http://www.myoddweb.com/wp-content/uploads/2009/08/tracking-150x150.jpg" alt="Courseplanner tracking a waypoint" width="150" height="150" /><p class="wp-caption-text">Courseplanner tracking a waypoint</p></div>
<p>I finally managed to get back to flying a little over the week-end, I am working on some new features for <a title="Courseplanner" href="http://www.myoddweb.com/courseplanner/">Courseplanner</a>, namely the ability to turn into a waypoint, (or past a waypoint depending on the one you want to visit).</p>
<p>All the coding is done, I am just testing with various aircraft if everything works as expected. With all the small aircraft, (Cessna, Mooney and so on), it works well, but it is another story for the heavies. It is just very hard to remain on course without having some wild turns in order to remain on course.</p>
<p>I also added some small features to see where the automatic flight management of Courseplanner is aiming.</p>
<p>But all in all it is fun to get back to flying again.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2009/08/23/back-in-the-flying-seat/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Install Ubuntu 9 on Virtual PC 2007 &#8211; part deux</title>
		<link>http://www.myoddweb.com/2009/07/04/install-ubuntu-9-on-virtual-pc-2007-part-deux/</link>
		<comments>http://www.myoddweb.com/2009/07/04/install-ubuntu-9-on-virtual-pc-2007-part-deux/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 05:46:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Virtual PC]]></category>

		<guid isPermaLink="false">http://www.myoddweb.com/?p=118</guid>
		<description><![CDATA[Part 2 of installing Ubuntu 9.04 on Vrtual PC 2007, Editing the menu.lst file so that it always works.]]></description>
			<content:encoded><![CDATA[<p>Ok, so you <a title="Install Ubuntu 9.0.4 on Virtual PC" href="http://www.myoddweb.com/2009/07/03/install-ubuntu-9-on-virtual-pc-2007/">installed Ubuntu</a> 9.04 on Virtual PC 2007, and it now asks you to reboot, (or you already tried to reboot, cursed me, and came back here to see if you missed something).<br />
If you are lucky, everything works fine, if not you cannot see anything or you get a bunch of errors. This is because, once again, Ubuntu is trying to guess your virtual screen resolution and it is guessing it wrong.</p>
<p>So you need to edit the &#8216;boot&#8217; file once and for all so that from now on it boots into the right screen.</p>
<p>You need to do 2 things, first you need to edit the boot, one more time to get into Ubuntu and then you will need to update the boot file so that you no longer have to do this again.</p>
<p>So, reboot Ubuntu, when you see something like &#8216;<em>grub loading&#8230;</em>&#8216;, press esc and you will see a menu.</p>
<p>Select the first line, it will say something along the lines of &#8216;<em>Ubuntu 9.0.4, Kernel &#8230;&#8217;</em>. The other lines should say almost the same with extra words like, &#8216;<em>Recovery mode</em>&#8216; and &#8216;<em>memtest86+</em>&#8216; don&#8217;t choose those.<br />
Press &#8216;e&#8217; to edit the boot commands.</p>
<p>Select the line that says something like &#8220;<em>Kernel &#8230;</em>&#8220;, (normally the first one, but sometimes the second line).<br />
Press &#8216;e&#8217; again, (to edit that line).<br />
At the end of that line simply add</p>
<pre><em>noreplace-paravirt</em> vga=771</pre>
<p>or</p>
<pre><em>noreplace-paravirt</em> vga=791</pre>
<p>Press &#8216;<em>enter</em>&#8216;.<br />
Press &#8216;b&#8217; to start the boot sequence.</p>
<p>Now you are back in business, Ununtu is up and running again.<br />
The last thing you need to do is make sure the changes you just did are saved so you don&#8217;t have to do the same thing over and over.</p>
<p>So, once Ubuntu is up and running select the menu option, &#8216;<em>Applications&gt;Accessories&gt;Terminal&#8217;</em> and you should get a white window with a blinking cursor.<br />
Next to that cursor type the following, &#8216;<em>gksudo gedit /boot/grub/menu.lst</em>&#8216;, press enter, give your password.</p>
<pre>## ## End Default Options ##
title ...
uuid ...
kernel ...</pre>
<p>At the end of the line that says &#8216;<em>Kernel</em>&#8216; add &#8216;<em>noreplace-paravirt</em>&#8216;, (without the quotes of course).<br />
Save the file.<br />
Close the editor</p>
<p>Back at the command prompt simply update the grub, (in other words tell Ubuntu that you changed the file).</p>
<pre>sudo update-grub</pre>
<p>And that&#8217;s all, you can now reboot into your Virtual PC Ubuntu and all should be fine.</p>
<p>Note: If like me you are lazy and you don&#8217;t want to type everything, simply copy the text, place your cursor where you want the text to go and in Virtual PC select &#8216;<em>Edit&gt;Paste</em>&#8216; and it will &#8216;type&#8217; everything for you.</p>
<p>&lt;Edit&gt;Have a look at the <a title="Ubuntu 9 on Virtual PC - Updates" href="http://www.myoddweb.com/2009/09/22/install-ubuntu-9-on-virtual-pc-2007-part-trois/">third post</a> to help you handle updates.</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 171px; width: 1px; height: 1px;">modprobe s</div>
]]></content:encoded>
			<wfw:commentRss>http://www.myoddweb.com/2009/07/04/install-ubuntu-9-on-virtual-pc-2007-part-deux/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

