<?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>simra &#187; Portfolio</title>
	<atom:link href="http://www.simra.ch/category/portfolio/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.simra.ch</link>
	<description>development &#38; design</description>
	<lastBuildDate>Fri, 26 Mar 2010 15:57:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>www.newsaddict.ch</title>
		<link>http://www.simra.ch/2010/02/newsaddict/</link>
		<comments>http://www.simra.ch/2010/02/newsaddict/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 10:37:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[mynews]]></category>
		<category><![CDATA[newsbook]]></category>
		<category><![CDATA[newsjunkie]]></category>
		<category><![CDATA[newsroom]]></category>
		<category><![CDATA[thelates]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=1092</guid>
		<description><![CDATA[NewsAddict ist ein webbasiertes Tool, das diverse Zeitungen, Zeitschriften, Blogs, Community Seiten und viele mehr nach den neusten News, Blogeinträgen, Videos und Bilder durchsucht. Es ist die perfekte Startseite, um auf dem Laufenden zu bleiben, sich über brennende Themen zu informieren oder um ein Suchlauf über mehrere Quellen geleichzeitig zu starten.]]></description>
			<content:encoded><![CDATA[<p>NewsAddict ist ein webbasiertes Tool, das diverse Zeitungen, Zeitschriften, Blogs, Community Seiten und viele mehr nach den neusten News, Blogeinträgen, Videos und Bilder durchsucht. Es ist die perfekte Startseite, um auf dem Laufenden zu bleiben, sich über brennende Themen zu informieren oder um ein Suchlauf über mehrere Quellen geleichzeitig zu starten.<br />
<a href="http://www.newsaddict.ch" target="_blank">http://www.newsaddict.ch</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2010/02/newsaddict/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EDW (Edwelweiss Air) Widget</title>
		<link>http://www.simra.ch/2010/02/edw-edwelweiss-air-widget/</link>
		<comments>http://www.simra.ch/2010/02/edw-edwelweiss-air-widget/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 10:24:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[http post request]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=1084</guid>
		<description><![CDATA[Das EDW Widget für OS X wurde für Piloten der Firma Edelweiss Air konzipiert. Mit ihm können Piloten den aktuellen Flugkalender, Fluginformationen und neuste Meldungen abrufen. Das Programm basiert auf Javascript und wurde mit dashcode entwickelt. ]]></description>
			<content:encoded><![CDATA[<p>Das EDW Widget für OS X wurde für Piloten der Firma Edelweiss Air konzipiert. Mit ihm können Piloten den aktuellen Flugkalender, Fluginformationen und neuste Meldungen abrufen. Das Programm basiert auf Javascript und wurde mit dashcode entwickelt.<br />
<span id="more-1084"></span><br />
<img src="http://www.simra.ch/wordpress/../uploads/2010/02/edw1.png" alt="" title="Printscreen EDW" width="458" height="468" class="aligncenter size-full wp-image-1085" /></p>
<p><img src="http://www.simra.ch/wordpress/../uploads/2010/02/edw2.png" alt="" title="Printscreen EDW" width="458" height="368" class="aligncenter size-full wp-image-1086" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2010/02/edw-edwelweiss-air-widget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Password Changer</title>
		<link>http://www.simra.ch/2009/12/windows-password-changer/</link>
		<comments>http://www.simra.ch/2009/12/windows-password-changer/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 20:12:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Domain]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=1019</guid>
		<description><![CDATA[This is a small and very useful Tool to change the password of any account on your local computer or Active Directory. It's ideal for centrally managing the passwords of your Domain(s). ]]></description>
			<content:encoded><![CDATA[<p>This is a small and very useful Tool to change the password of any account on your local computer or Active Directory. It&#8217;s ideal for centrally managing the passwords of your Domain(s).<br />
<span id="more-1019"></span></p>
<p><a href="http://www.simra.ch/uploads/downloads/csharp/addressfinder/screenshot.jpg" target="_blank"></p>
<div class="box-back">
<div class="box-con">
<img src="http://www.simra.ch/uploads/downloads/csharp/wpc/printscreen_small.jpg" alt="Screenshot" title="Screenshot" width="271px"  height="195px" class="aligncenter" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<p></a></p>
<p>Download: <a href="http://www.simra.ch/uploads/downloads/csharp/wpc/wpc.zip">Windows Password Changer v.1.0</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/12/windows-password-changer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Webseite salesplanning.ch</title>
		<link>http://www.simra.ch/2009/12/webseite-salesplanning-ch/</link>
		<comments>http://www.simra.ch/2009/12/webseite-salesplanning-ch/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 15:45:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Webdesign]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=854</guid>
		<description><![CDATA[Neue dynamische Webseite für die Firma Sales Planning. Die Webseite basiert auf Wordpress und bietet diverse Features wie Terminplannung, Online-Anmeldung und dynamische Menüs. Die Webseite kann unter folgender Adresse angeschaut werden: <a href="http://www.salesplanning.ch" target="_blank">http://www.salesplanning.ch</a>]]></description>
			<content:encoded><![CDATA[<p>Neue dynamische Webseite für die Firma Sales Planning. Die Webseite basiert auf Wordpress und bietet diverse Features wie Terminplannung, Online-Anmeldung und dynamische Menüs. Die Webseite kann unter folgender Adresse angeschaut werden: <a href="http://www.salesplanning.ch" target="_blank">http://www.salesplanning.ch</a><br />
<span id="more-854"></span></p>
<p><a href="http://www.salesplanning.ch" target="_blank"></p>
<div class="box-back">
<div class="box-con">
<img src="http://www.simra.ch/uploads/downloads/webdesign/salesplanning.ch/screenshot_small.jpg" alt="Flash AS3 Gallery Printscreen" title="Flash AS3 Gallery Printscreen" width="291px"  height="200px" class="aligncenter" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<p></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/12/webseite-salesplanning-ch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ip-Address Range Pinger</title>
		<link>http://www.simra.ch/2009/11/ip-address-range-pinger/</link>
		<comments>http://www.simra.ch/2009/11/ip-address-range-pinger/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 21:46:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[gateway]]></category>
		<category><![CDATA[hostname]]></category>
		<category><![CDATA[ip-address range]]></category>
		<category><![CDATA[network card]]></category>
		<category><![CDATA[NIC]]></category>
		<category><![CDATA[ping]]></category>
		<category><![CDATA[subnet]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=791</guid>
		<description><![CDATA[Das folgende Tool ist sehr nützlich, um Geräte im aktuellen Neztbereich zu suchen. Anhand der Ip-Adresse und der Subnetzmaske wird der Ip-Range bestimmt. Mit der Funktion <strong>Ping Range</strong> kann der gesamte Bereich gepingt werden. Geräte die Antwort geben, werden im Protokoll aufgeführt. ]]></description>
			<content:encoded><![CDATA[<p>Das folgende Tool ist sehr nützlich um Geräte im aktuellen Neztbereich zu suchen. Anhand der Ip-Adresse und der Subnetzmaske wird der Ip-Range bestimmt. Mit der Funktion <strong>Ping Range</strong> kann der gesamte Bereich gepingt werden. Geräte die Antwort geben, werden im Protokoll aufgeführt. Für 255 Pings braucht das Programm durchschnittlich weniger als 1 Sekunde!<br />
<span id="more-791"></span></p>
<p><a href="http://www.simra.ch/uploads/downloads/csharp/ping/printscreen.jpg" target="_blank"></p>
<div class="box-back">
<div class="box-con">
<img src="http://www.simra.ch/uploads/downloads/csharp/ping/printscreen.jpg" alt="Flash AS3 Gallery Printscreen" title="Flash AS3 Gallery Printscreen" width="75%"  class="alignnone" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<p></a></p>
<p>Download <a href="http://www.simra.ch/uploads/downloads/csharp/ping/ping.zip">Ip-Address Range Pinger v.1.0</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/ip-address-range-pinger/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Flash AS3 Gallery</title>
		<link>http://www.simra.ch/2009/11/flash-as3-gallery/</link>
		<comments>http://www.simra.ch/2009/11/flash-as3-gallery/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 20:09:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Tween]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=666</guid>
		<description><![CDATA[Eine Flash Bildergallerie, die dynamisch Bilder über ein Php-Script lädt, wobei die Bilder in einem Verzeichnis ermittelt werden und per XML-File ausgegeben werden. Über ein zweites Php-Script werden die Bilder verkleinert. ]]></description>
			<content:encoded><![CDATA[<p>Eine Flash Bildergallerie, die dynamisch Bilder über ein Php-Script lädt, wobei die Bilder in einem Verzeichnis ermittelt werden und per XML-File ausgegeben werden. Über ein zweites Php-Script werden die Bilder verkleinert.<br />
<span id="more-666"></span><br />
<a href="http://www.simra.ch/uploads/2009/11/flash_gallery.jpg"></p>
<div class="box-back">
<div class="box-con">
<img src="http://www.simra.ch/uploads/2009/11/flash_gallery-300x200.jpg" alt="Flash AS3 Gallery Printscreen" title="Flash AS3 Gallery Printscreen" width="300" height="200" class="alignnone size-thumbnail wp-image-674" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<p></a></p>
<p>Die Gallerie kann unter der foldenden Adresse angeschaut werden:</p>
<p><a href="http://pics.simra.ch">Flash AS3 Gallery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/flash-as3-gallery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SimPhy 2009 Project</title>
		<link>http://www.simra.ch/2009/11/simphy-2009-project/</link>
		<comments>http://www.simra.ch/2009/11/simphy-2009-project/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 20:36:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[BranchGroup]]></category>
		<category><![CDATA[Canvas3D]]></category>
		<category><![CDATA[java 3D]]></category>
		<category><![CDATA[SimpleUniverse]]></category>
		<category><![CDATA[TransformGroup]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=655</guid>
		<description><![CDATA[Beim Project SimPhy 2009 handelt es sich um ein Java-Programm zum visualisieren von physikalischen und mathematischen Vorgängen. Dabei kann eine Art Spielwiese erstellt werden, die anschliessend als Java-Applet gespeichert und auf einer Homepage einbettet werden kann. Mit SimPhy können zwei- sowie dreidimensionale Vorgänge simuliert werden.]]></description>
			<content:encoded><![CDATA[<p>Beim Project SimPhy 2009 handelt es sich um ein Java-Programm zum visualisieren von physikalischen und mathematischen Vorgängen. Dabei kann eine Art Spielwiese erstellt werden, die anschliessend als Java-Applet gespeichert und auf einer Homepage einbettet werden kann. Mit SimPhy können zwei- sowie dreidimensionale Vorgänge simuliert werden.<br />
<span id="more-655"></span><br />
<a href="http://simphy.simra.ch" target="_blank"></p>
<div class="box-back">
<div class="box-con">
<img src="http://www.simra.ch/uploads/simphy_1-300x200.jpg" alt="simphy_1" title="simphy_1" width="300" height="200" class="alignnone size-thumbnail wp-image-657" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<p></a></p>
<p>Das Programm richtet sich an Leute, die sich für das Programmieren interessieren, oder Freude an Physik und Mathematik haben. Es eignet sich gut um Messungen vorzunehmen oder physikalische Begebenheiten zu überprüfen. Lehrpersonen, die ihren Schülern physikalische Phänomene veranschaulichen wollen, kann es empfohlen werden. </p>
<blockquote><p>Das Projekt ist in Verbindung mit meiner Maturaarbeit entstanden. Weitere Informationen zum Projekt sind auf der folgenden Homepage verfügbar.
</p></blockquote>
<p><a href="http://simphy.simra.ch">SimPhy 2009 Project Webseite</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/simphy-2009-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vb.Net WebServer</title>
		<link>http://www.simra.ch/2009/11/vb-net-webserver/</link>
		<comments>http://www.simra.ch/2009/11/vb-net-webserver/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 19:48:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Vb.Net]]></category>
		<category><![CDATA[Multithread]]></category>
		<category><![CDATA[Portlistener]]></category>
		<category><![CDATA[TcpListener]]></category>
		<category><![CDATA[Webserver]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=616</guid>
		<description><![CDATA[Dieser Artikel handelt von einem kleinen Webserver der mit Vb.Net programmiert ist. Ursprünglich wurde die Klasse für ein bestehendes Verwaltungsprogramm entwickelt, das Daten im Netzwerk per Browser zugänglich machen sollte. Das folgende Beispielprogramm dient nur noch als Webserver.]]></description>
			<content:encoded><![CDATA[<p>Dieser Artikel handelt von einem kleinen Webserver der mit Vb.Net programmiert ist. Ursprünglich wurde die Klasse für ein bestehendes Verwaltungsprogramm entwickelt, das Daten im Netzwerk per Browser zugänglich machen sollte. Das folgende Beispielprogramm dient nur noch als Webserver.<br />
<span id="more-616"></span></p>
<div class="box-back">
<div class="box-con">
<img class="alignnone size-full wp-image-617" title="webserver" src="http://www.simra.ch/wordpress/../uploads/webserver.jpg" alt="webserver" width="354" height="185" />
</div>
<div class="box-front"><span>front image</span></div>
</div>
<blockquote><p>Nach dem Start sind die Daten im genannten Verzeichnis über die genannte Ip-Adresse erreichbar. Selbstverständlich wird Multithreading unterstützt.</p></blockquote>
<p>Die Webserver-Klasse kann wie folgt verwendet werden:</p>
<div class="codecolorer-container vbnet default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vbnet codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #FF8000;">Public</span> ws <span style="color: #FF8000;">As</span> <span style="color: #FF8000;">New</span> WebServer<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><br />
ws.<span style="color: #0000FF;">SetPort</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">80</span><span style="color: #000000;">&#41;</span><br />
ws.<span style="color: #0000FF;">SetDirectory</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;/htdocs&quot;</span><span style="color: #000000;">&#41;</span><br />
ws.<span style="color: #0000FF;">Start</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span></div></div>
<p><a href="http://www.simra.ch/wordpress/../uploads/vbwebserver.zip">Download Vb.Net WebServer</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/vb-net-webserver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java zipper</title>
		<link>http://www.simra.ch/2009/11/java-zipper/</link>
		<comments>http://www.simra.ch/2009/11/java-zipper/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:46:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[CreateZip]]></category>
		<category><![CDATA[java.util.zip]]></category>
		<category><![CDATA[JFileChooser]]></category>
		<category><![CDATA[simZip]]></category>
		<category><![CDATA[ZipEntry]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=562</guid>
		<description><![CDATA[Das folgende Beispielprogramm basiert auf einer Klasse, die für ein grösseres Projekt entwickelt wurde. Mit ihr können Zip-Archiv erstellt und entpackt werden. Überdies enthät sie Features wie Statusanzeige, Formulare und Popup-Menus, die beliebig eingesetzt werden können.]]></description>
			<content:encoded><![CDATA[<p>Das folgende Beispielprogramm basiert auf einer Klasse, die für ein grösseres Projekt entwickelt wurde. Mit ihr können Zip-Archiv erstellt und entpackt werden. Überdies enthät sie Features wie Statusanzeige, Formulare und Popup-Menus, die beliebig eingesetzt werden können.<br />
<span id="more-562"></span></p>
<div class="box-back">
<div class="box-con"><img class="alignnone size-full wp-image-573" title="java_zipper" src="http://www.simra.ch/wordpress/../uploads/java_zipper.png" alt="java_zipper" width="358" height="188" /></div>
<div class="box-front"><span>front image</span></div>
</div>
<p>Dieses Beispielprogramm beinhaltet jedoch nur ein Formular zum Erstellen von Zip-Dateien. Es können Dateien und Verzeichnisse per Drag and Drop ins Formular gezogen werden. Wenn anschliessend auf &#8220;Create Zip&#8221; gelicket wird, kann die Zieldatei angegeben werden und das Programm beginnt mit dem Archivieren.</p>
<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">CreateZip cz <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> CreateZip<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; @Override<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> finished<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Zip-Archiv wurde erstellt</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span><br />
cz.<span style="color: #006633;">setLabel</span><span style="color: #009900;">&#40;</span>jLabel1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Auf dieses Label werden Statusmeldungen ausgegeben</span><br />
cz.<span style="color: #006633;">setProgressBar</span><span style="color: #009900;">&#40;</span>jProgressBar1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Diese ProgressBar zeigt den Status an</span><br />
cz.<span style="color: #006633;">setArrayList</span><span style="color: #009900;">&#40;</span>_files, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Dateien die gepackt werden sollen -&gt; true = mit Subdirs</span><br />
cz.<span style="color: #006633;">setZipFile</span><span style="color: #009900;">&#40;</span>zipFile<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Zieldatei</span><br />
cz.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<blockquote><p>Der Code-Auszug soll veranschaulichen, wie die Klasse verwendet werden kann</p></blockquote>
<p>Hier nun das besagte Programm als .jar Datei zum Herunterladen. Es funktioniert auf Mac OS sowie Windows (sofern SDK 1.6 installiert ist).<br />
<a href='http://www.simra.ch/uploads/zipper.zip'>Java zipper</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/java-zipper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ Installations-Assistent</title>
		<link>http://www.simra.ch/2009/11/installations-assistent/</link>
		<comments>http://www.simra.ch/2009/11/installations-assistent/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 10:33:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[bmFinanz]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Visual FoxPro]]></category>

		<guid isPermaLink="false">http://www.simra.ch/?p=538</guid>
		<description><![CDATA[Ein einfacher Installations-Assistent, der bei bedarf Daten vom Internet holt, diese entpackt, gegebenenfalls Systemdateien registriert und wenn alles in Ordnung ist die Software startet.]]></description>
			<content:encoded><![CDATA[<p>Ein einfacher Installations-Assistent, der bei bedarf Daten vom Internet holt, diese entpackt, gegebenenfalls Systemdateien registriert und wenn alles in Ordnung ist die Software startet.<br />
<span id="more-538"></span></p>
<p><a href="http://www.simra.ch/wordpress/../uploads/cinstaller.jpg"><img class="alignnone size-full wp-image-542" title="cinstaller" src="http://www.simra.ch/wordpress/../uploads/cinstaller.jpg" alt="cinstaller" width="445" height="165" /></a></p>
<blockquote><p>Der Assistent wurde für die Software <a href="http://www.bmfinanz.ch">bmFinanz</a> entwickelt, welches auf Visual FoxPro basiert und deshalb abhängig von der Microsoft Visual FoxPro Library bez. einem Client ist. Mit diesem C++ Programm kann die Software immer und überall gestartet werden, unabhängig davon, ob ein Client installiert wurde oder nicht.</p></blockquote>
<p>Hier der komplette C++ Code. Das Programm wurde mit Dev-C++ 4.9.9.0 geschrieben.</p>
<div class="codecolorer-container cpp default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;height:300px;"><div class="cpp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339900;">#include &lt;windows.h&gt;</span><br />
<span style="color: #339900;">#include &lt;sys/stat.h&gt;</span><br />
<span style="color: #339900;">#include &lt;iostream&gt;</span><br />
<span style="color: #339900;">#include &lt;string&gt;</span><br />
<br />
<span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> std<span style="color: #008080;">;</span> <span style="color: #666666;">// translate std:: </span><br />
<span style="color: #339900;">#define IDC_MAIN_EDIT 101 // ID of textbox</span><br />
<br />
<span style="color: #ff0000; font-style: italic;">/* &nbsp;Declare Windows procedure &nbsp;*/</span><br />
LRESULT CALLBACK WindowProcedure <span style="color: #008000;">&#40;</span>HWND, UINT, WPARAM, LPARAM<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
<span style="color: #0000ff;">void</span> CenterWindow <span style="color: #008000;">&#40;</span>HWND<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">bool</span> existsFile <span style="color: #008000;">&#40;</span>string<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">void</span> proto <span style="color: #008000;">&#40;</span>string<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">void</span> downloadFile <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">char</span><span style="color: #000040;">*</span>,<span style="color: #0000ff;">char</span><span style="color: #000040;">*</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">void</span> loader<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">char</span><span style="color: #000040;">*</span>,<span style="color: #0000ff;">bool</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
<span style="color: #ff0000; font-style: italic;">/* &nbsp;Make the class name into a global variable &nbsp;*/</span><br />
<span style="color: #0000ff;">char</span> szClassName<span style="color: #008000;">&#91;</span> <span style="color: #008000;">&#93;</span> <span style="color: #000080;">=</span> <span style="color: #FF0000;">&quot;WindowsApp&quot;</span><span style="color: #008080;">;</span><br />
HWND hwnd<span style="color: #008080;">;</span><br />
<br />
<span style="color: #0000ff;">int</span> WINAPI WinMain <span style="color: #008000;">&#40;</span>HINSTANCE hThisInstance,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; HINSTANCE hPrevInstance,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LPSTR lpszArgument,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">int</span> nFunsterStil<span style="color: #008000;">&#41;</span><br />
<br />
<span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; MSG messages<span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* Here messages to the application are saved */</span><br />
&nbsp; &nbsp; WNDCLASSEX wincl<span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* Data structure for the windowclass */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* The Window structure */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">hInstance</span> <span style="color: #000080;">=</span> hThisInstance<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">lpszClassName</span> <span style="color: #000080;">=</span> szClassName<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">lpfnWndProc</span> <span style="color: #000080;">=</span> WindowProcedure<span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* This function is called by windows */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">style</span> <span style="color: #000080;">=</span> CS_DBLCLKS<span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Catch double-clicks */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">cbSize</span> <span style="color: #000080;">=</span> <span style="color: #0000dd;">sizeof</span> <span style="color: #008000;">&#40;</span>WNDCLASSEX<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Use default icon and mouse-pointer */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">hIcon</span> <span style="color: #000080;">=</span> LoadIcon <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">NULL</span>, IDI_APPLICATION<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">hIconSm</span> <span style="color: #000080;">=</span> LoadIcon <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">NULL</span>, IDI_APPLICATION<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">hCursor</span> <span style="color: #000080;">=</span> LoadCursor <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">NULL</span>, IDC_ARROW<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">lpszMenuName</span> <span style="color: #000080;">=</span> <span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* No menu */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">cbClsExtra</span> <span style="color: #000080;">=</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* No extra bytes after the window class */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">cbWndExtra</span> <span style="color: #000080;">=</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* structure or the window instance */</span><br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Use Windows's default color as the background of the window */</span><br />
&nbsp; &nbsp; wincl.<span style="color: #007788;">hbrBackground</span> <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span>HBRUSH<span style="color: #008000;">&#41;</span> COLOR_BACKGROUND<span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Register the window class, and if it fails quit the program */</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">!</span>RegisterClassEx <span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>wincl<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* The class is registered, let's create the program*/</span><br />
&nbsp; &nbsp; hwnd <span style="color: #000080;">=</span> CreateWindowEx <span style="color: #008000;">&#40;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000dd;">0</span>, &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Extended possibilites for variation */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;szClassName, &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Classname */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #FF0000;">&quot;bmFinanz Installer&quot;</span>,<span style="color: #ff0000; font-style: italic;">/* Title Text */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;WS_OVERLAPPEDWINDOW, <span style="color: #ff0000; font-style: italic;">/* default window */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CW_USEDEFAULT, &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Windows decides the position */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CW_USEDEFAULT, &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* where the window ends up on the screen */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000dd;">544</span>, &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* The programs width */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000dd;">200</span>, &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* and height in pixels */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;HWND_DESKTOP, &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* The window is a child-window to desktop */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000ff;">NULL</span>, &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* No menu */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;hThisInstance, &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Program Instance handler */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000ff;">NULL</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* No Window Creation data */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">bool</span> err <span style="color: #000080;">=</span> <span style="color: #0000ff;">false</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">!</span>existsFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;vfp7r.dll&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #000040;">||!</span>existsFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;vfp7rdeu.dll&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #000040;">||!</span>existsFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;msvcr70.dll&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #000040;">||!</span>existsFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;main000.exe&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CenterWindow<span style="color: #008000;">&#40;</span>hwnd<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ShowWindow <span style="color: #008000;">&#40;</span>hwnd, nFunsterStil<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Downloading bmFinanz....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000dd;">remove</span><span style="color: #008000;">&#40;</span> <span style="color: #FF0000;">&quot;buclient.exe&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;downloadFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;http://www.bm-informatik.ch/update_buha/buclient.e00&quot;</span>,<span style="color: #FF0000;">&quot;buclient.e00&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #0000dd;">rename</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;buclient.e00&quot;</span>, <span style="color: #FF0000;">&quot;buclient.exe&quot;</span><span style="color: #008000;">&#41;</span> <span style="color: #000080;">==</span> <span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>bmFinanz wird installiert....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; loader<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;buclient.exe -y&quot;</span>,<span style="color: #0000ff;">true</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000dd;">remove</span><span style="color: #008000;">&#40;</span> <span style="color: #FF0000;">&quot;buclient.exe&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Downloading Updates....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000dd;">remove</span><span style="color: #008000;">&#40;</span> <span style="color: #FF0000;">&quot;kom07.exe&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; downloadFile<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;http://www.bm-informatik.ch/update_buha/kom07.e00&quot;</span>,<span style="color: #FF0000;">&quot;kom07.e00&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #0000dd;">rename</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;kom07.e00&quot;</span>, <span style="color: #FF0000;">&quot;kom07.exe&quot;</span><span style="color: #008000;">&#41;</span> <span style="color: #000080;">==</span> <span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Update wird installiert....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; loader<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;kom07.exe -y&quot;</span>,<span style="color: #0000ff;">true</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000dd;">remove</span><span style="color: #008000;">&#40;</span> <span style="color: #FF0000;">&quot;kom07.exe&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><span style="color: #0000ff;">else</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Fehler beim Umbenennen der Datei....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; err<span style="color: #000080;">=</span><span style="color: #0000ff;">true</span><span style="color: #008080;">;</span> &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #008000;">&#125;</span><span style="color: #0000ff;">else</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; proto<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Fehler beim Umbenennen der Datei....&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; err<span style="color: #000080;">=</span><span style="color: #0000ff;">true</span><span style="color: #008080;">;</span> &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #008000;">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span> &nbsp;<span style="color: #000040;">!</span>err<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; loader<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;REGSVR32.EXE vfp7r.dll /s&quot;</span>,<span style="color: #0000ff;">true</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; loader<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;REGSVR32.EXE vfp7rdeu.dll /s&quot;</span>,<span style="color: #0000ff;">true</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; loader<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;REGSVR32.EXE MSCOMCTL.OCX /s&quot;</span>,<span style="color: #0000ff;">true</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; WinExec<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;main000.exe&quot;</span>,SW_SHOW<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span> &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
<br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Close the window */</span><br />
&nbsp; &nbsp; PostQuitMessage <span style="color: #008000;">&#40;</span>0<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Run the message loop. It will run until GetMessage() returns 0 */</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">while</span> <span style="color: #008000;">&#40;</span>GetMessage <span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>messages, <span style="color: #0000ff;">NULL</span>, <span style="color: #0000dd;">0</span>, <span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Translate virtual-key messages into character messages */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; TranslateMessage<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>messages<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* Send message to WindowProcedure */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; DispatchMessage<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>messages<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* The program return-value is 0 - The value that PostQuitMessage() gave */</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">return</span> messages.<span style="color: #007788;">wParam</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#125;</span><br />
<br />
<span style="color: #ff0000; font-style: italic;">/* &nbsp;This function is called by the Windows function DispatchMessage() &nbsp;*/</span><br />
<br />
LRESULT CALLBACK WindowProcedure <span style="color: #008000;">&#40;</span>HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam<span style="color: #008000;">&#41;</span><br />
<span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">switch</span> <span style="color: #008000;">&#40;</span>message<span style="color: #008000;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* handle the messages */</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">case</span> WM_CREATE<span style="color: #008080;">:</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; HFONT hfDefault<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; HWND hEdit<span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; hEdit <span style="color: #000080;">=</span> CreateWindowEx<span style="color: #008000;">&#40;</span>WS_EX_CLIENTEDGE, <span style="color: #FF0000;">&quot;EDIT&quot;</span>, <span style="color: #FF0000;">&quot;&quot;</span>, <br />
&nbsp; &nbsp; &nbsp; &nbsp; WS_CHILD <span style="color: #000040;">|</span> WS_VISIBLE <span style="color: #000040;">|</span> WS_VSCROLL <span style="color: #000040;">|</span> WS_HSCROLL <span style="color: #000040;">|</span> ES_MULTILINE <span style="color: #000040;">|</span> ES_AUTOVSCROLL <span style="color: #000040;">|</span> ES_AUTOHSCROLL, <br />
&nbsp; &nbsp; &nbsp; &nbsp; 0, 0, 100, 100, hwnd, <span style="color: #008000;">&#40;</span>HMENU<span style="color: #008000;">&#41;</span>IDC_MAIN_EDIT, GetModuleHandle<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span>, <span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>hEdit <span style="color: #000080;">==</span> <span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MessageBox<span style="color: #008000;">&#40;</span>hwnd, <span style="color: #FF0000;">&quot;Could not create edit box.&quot;</span>, <span style="color: #FF0000;">&quot;Error&quot;</span>, MB_OK <span style="color: #000040;">|</span> MB_ICONERROR<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; hfDefault <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span>HFONT<span style="color: #008000;">&#41;</span>GetStockObject<span style="color: #008000;">&#40;</span>DEFAULT_GUI_FONT<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; SendMessage<span style="color: #008000;">&#40;</span>hEdit, WM_SETFONT, <span style="color: #008000;">&#40;</span>WPARAM<span style="color: #008000;">&#41;</span>hfDefault, MAKELPARAM<span style="color: #008000;">&#40;</span>FALSE, 0<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">break</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">case</span> WM_SIZE<span style="color: #008080;">:</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; HWND hEdit<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; RECT rcClient<span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; GetClientRect<span style="color: #008000;">&#40;</span>hwnd, <span style="color: #000040;">&amp;</span>rcClient<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; hEdit <span style="color: #000080;">=</span> GetDlgItem<span style="color: #008000;">&#40;</span>hwnd, IDC_MAIN_EDIT<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; SetWindowPos<span style="color: #008000;">&#40;</span>hEdit, <span style="color: #0000ff;">NULL</span>, 0, 0, rcClient.<span style="color: #007788;">right</span>, rcClient.<span style="color: #007788;">bottom</span>, SWP_NOZORDER<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">break</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">case</span> WM_DESTROY<span style="color: #008080;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; PostQuitMessage <span style="color: #008000;">&#40;</span>0<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; <span style="color: #ff0000; font-style: italic;">/* send a WM_QUIT to the message queue */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">break</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">default</span><span style="color: #008080;">:</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #ff0000; font-style: italic;">/* for messages that we don't deal with */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">return</span> DefWindowProc <span style="color: #008000;">&#40;</span>hwnd, message, wParam, lParam<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#125;</span><br />
<br />
<br />
<span style="color: #0000ff;">void</span> proto<span style="color: #008000;">&#40;</span>string s<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; HWND hEdit <span style="color: #000080;">=</span> GetDlgItem<span style="color: #008000;">&#40;</span>hwnd, IDC_MAIN_EDIT<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">int</span> nLen <span style="color: #000080;">=</span> GetWindowTextLength <span style="color: #008000;">&#40;</span>hEdit<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; <span style="color: #0000ff;">int</span> nLen2 <span style="color: #000080;">=</span> s.<span style="color: #007788;">length</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">char</span><span style="color: #000040;">*</span> buffer <span style="color: #000080;">=</span> <span style="color: #0000dd;">new</span> <span style="color: #0000ff;">char</span><span style="color: #008000;">&#91;</span>nLen<span style="color: #000040;">+</span>nLen2<span style="color: #000040;">+</span>1<span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span> <br />
&nbsp; &nbsp; GetWindowText<span style="color: #008000;">&#40;</span>hEdit, buffer, nLen<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>nLen<span style="color: #000080;">&gt;</span>0<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000dd;">strcat</span><span style="color: #008000;">&#40;</span>buffer,s.<span style="color: #007788;">c_str</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; SetWindowText<span style="color: #008000;">&#40;</span>hEdit, buffer<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><span style="color: #0000ff;">else</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; SetWindowText<span style="color: #008000;">&#40;</span>hEdit, s.<span style="color: #007788;">c_str</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; UpdateWindow<span style="color: #008000;">&#40;</span>hwnd<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <span style="color: #666666;">//refresh &nbsp; &nbsp; &nbsp; </span><br />
<span style="color: #008000;">&#125;</span> &nbsp; &nbsp;<br />
<br />
<span style="color: #0000ff;">void</span> loader<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">char</span> szArgs<span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span>, <span style="color: #0000ff;">bool</span> hiden<span style="color: #008000;">&#41;</span><br />
<span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; STARTUPINFO &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;si <span style="color: #000080;">=</span> <span style="color: #008000;">&#123;</span> <span style="color: #0000dd;">sizeof</span><span style="color: #008000;">&#40;</span>si<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#125;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; PROCESS_INFORMATION &nbsp;pi<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>hiden<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; si.<span style="color: #007788;">dwFlags</span> <span style="color: #000080;">=</span> STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; si.<span style="color: #007788;">wShowWindow</span> <span style="color: #000080;">=</span> SW_HIDE<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span> &nbsp; &nbsp;<br />
&nbsp;<br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>CreateProcess<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">NULL</span>, szArgs, <span style="color: #0000dd;">0</span>, <span style="color: #0000dd;">0</span>, FALSE, <span style="color: #0000dd;">0</span>, <span style="color: #0000dd;">0</span>, <span style="color: #0000dd;">0</span>, LPSTARTUPINFOA<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>si<span style="color: #008000;">&#41;</span>, <span style="color: #000040;">&amp;</span>pi<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// optionally wait for process to finish</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; WaitForSingleObject<span style="color: #008000;">&#40;</span>pi.<span style="color: #007788;">hProcess</span>, INFINITE<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; CloseHandle<span style="color: #008000;">&#40;</span>pi.<span style="color: #007788;">hProcess</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; CloseHandle<span style="color: #008000;">&#40;</span>pi.<span style="color: #007788;">hThread</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span><br />
<br />
<br />
<br />
<br />
<span style="color: #0000ff;">void</span> CenterWindow <span style="color: #008000;">&#40;</span>HWND hwnd<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; RECT rc<span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; GetWindowRect<span style="color: #008000;">&#40;</span>hwnd,<span style="color: #000040;">&amp;</span>rc<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">int</span> nWidth <span style="color: #000080;">=</span> rc.<span style="color: #007788;">right</span> <span style="color: #000040;">-</span> rc.<span style="color: #007788;">left</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">int</span> nHeight <span style="color: #000080;">=</span> rc.<span style="color: #007788;">bottom</span> <span style="color: #000040;">-</span> rc.<span style="color: #007788;">top</span><span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">int</span> X <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span><span style="color: #008000;">&#41;</span> GetSystemMetrics<span style="color: #008000;">&#40;</span>SM_CXFULLSCREEN<span style="color: #008000;">&#41;</span> <span style="color: #000040;">-</span> nWidth<span style="color: #008000;">&#41;</span> <span style="color: #000040;">/</span><span style="color: #0000dd;">2</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// center window horizontally</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">int</span> Y <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span><span style="color: #008000;">&#41;</span> GetSystemMetrics<span style="color: #008000;">&#40;</span>SM_CYFULLSCREEN<span style="color: #008000;">&#41;</span> <span style="color: #000040;">-</span> nHeight<span style="color: #008000;">&#41;</span> <span style="color: #000040;">/</span><span style="color: #0000dd;">2</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp;<span style="color: #666666;">// and vertically</span><br />
&nbsp; &nbsp; &nbsp; MoveWindow<span style="color: #008000;">&#40;</span>hwnd,X,Y,nWidth,nHeight,TRUE<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#125;</span><br />
<br />
<br />
<span style="color: #0000ff;">void</span> downloadFile<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">char</span><span style="color: #000040;">*</span> url, <span style="color: #0000ff;">char</span><span style="color: #000040;">*</span> fileName<span style="color: #008000;">&#41;</span><br />
<span style="color: #008000;">&#123;</span> &nbsp; <br />
&nbsp; &nbsp; <span style="color: #0000ff;">typedef</span> <span style="color: #0000ff;">int</span> <span style="color: #000040;">*</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">*</span>URLDownloadToFileA<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#40;</span><span style="color: #0000ff;">void</span><span style="color: #000040;">*</span>,<span style="color: #0000ff;">char</span><span style="color: #000040;">*</span>,<span style="color: #0000ff;">char</span><span style="color: #000040;">*</span>,DWORD,<span style="color: #0000ff;">void</span><span style="color: #000040;">*</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; HINSTANCE LibHnd <span style="color: #000080;">=</span> LoadLibrary<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Urlmon.dll&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; URLDownloadToFileA URLDownloadToFile <span style="color: #000080;">=</span> &nbsp;<span style="color: #008000;">&#40;</span>URLDownloadToFileA<span style="color: #008000;">&#41;</span> GetProcAddress<span style="color: #008000;">&#40;</span>LibHnd,<span style="color: #FF0000;">&quot;URLDownloadToFileA&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; URLDownloadToFile<span style="color: #008000;">&#40;</span>0, url, fileName, 0, 0<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> &nbsp; &nbsp; &nbsp; &nbsp;<br />
<span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <br />
<br />
<br />
<span style="color: #0000ff;">bool</span> existsFile<span style="color: #008000;">&#40;</span>string strFilename<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">struct</span> stat stFileInfo<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">bool</span> blnReturn<span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">int</span> intStat<span style="color: #008080;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666;">// Attempt to get the file attributes</span><br />
&nbsp; &nbsp; intStat <span style="color: #000080;">=</span> stat<span style="color: #008000;">&#40;</span>strFilename.<span style="color: #007788;">c_str</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>,<span style="color: #000040;">&amp;</span>stFileInfo<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>intStat <span style="color: #000080;">==</span> <span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// We were able to get the file attributes</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// so the file obviously exists.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; blnReturn <span style="color: #000080;">=</span> <span style="color: #0000ff;">true</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0000ff;">else</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// We were not able to get the file attributes.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// This may mean that we don't have permission to</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// access the folder which contains this file. If you</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// need to do that level of checking, lookup the</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// return values of stat which will give you</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666;">// more details on why stat failed.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; blnReturn <span style="color: #000080;">=</span> <span style="color: #0000ff;">false</span><span style="color: #008080;">;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span> &nbsp;<br />
&nbsp; &nbsp; <span style="color: #0000ff;">return</span><span style="color: #008000;">&#40;</span>blnReturn<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#125;</span></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.simra.ch/2009/11/installations-assistent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
