<?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>Codingstube.de &#187; Dev</title>
	<atom:link href="http://codingstube.de/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://codingstube.de</link>
	<description>Das heterogene Blog</description>
	<lastBuildDate>Tue, 22 Jun 2010 14:25:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>[Powershell]Dateisystemrechte analog bestehender Rechte hinzufügen</title>
		<link>http://codingstube.de/2010/04/powershelldateisystemrechte-analog-bestehender-rechte-hinzufugen/</link>
		<comments>http://codingstube.de/2010/04/powershelldateisystemrechte-analog-bestehender-rechte-hinzufugen/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 11:17:58 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://codingstube.de/2010/04/powershelldateisystemrechte-analog-bestehender-rechte-hinzufugen/</guid>
		<description><![CDATA[Man stelle sich vor: Ein Fileserver mit diversen Gruppenberechtigungen am Dateisystem soll durch neue Sicherheitsgruppen, analog der alten Gruppen, erweitert werden. Beispiel: Die Sicherheitsgruppe G_Test hat in dem Ordner Fileserver:\Daten\Temp Vollzugriff. Nun soll Gruppe N_Test dieselben Berechtigungen auf diesen Ordner erhalten. Und da kommt Powershell wie gerufen. Mit folgendem Skript wird abgefragt, ab welchem Ordner [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="ps" align="left" src="http://codingstube.de/wp-content/uploads/2010/04/ps-1.png" width="131" height="105" />Man stelle sich vor: Ein Fileserver mit diversen Gruppenberechtigungen am Dateisystem soll durch neue Sicherheitsgruppen, analog der alten Gruppen, erweitert werden.</p>
<p><strong>Beispiel:</strong></p>
<blockquote>
<p>Die Sicherheitsgruppe G_Test hat in dem Ordner <em>Fileserver:\Daten\Temp</em> Vollzugriff. Nun soll Gruppe N_Test dieselben Berechtigungen auf diesen Ordner erhalten.</p>
</blockquote>
<p>Und da kommt Powershell wie gerufen. Mit folgendem Skript wird abgefragt, ab welchem Ordner + (Unterordner) überprüft werden soll. Danach wird automatisch nach den <strong>angegebenen</strong> Gruppen gesucht und diese duch die neue Domäne ersetzt. Auch die Vererbung wird geprüft und ggf. übertragen. Es funktioniert nur, wenn die Gruppen gleich heißen, kann aber schnell abgeändert werden.</p>

<div class="wp_syntax"><div class="code"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#ChangeACL.ps1</span>
&nbsp;
<span style="color: #008000;">#The possible values for Rights are </span>
<span style="color: #008000;"># ListDirectory, ReadData, WriteData </span>
<span style="color: #008000;"># CreateFiles, CreateDirectories, AppendData </span>
<span style="color: #008000;"># ReadExtendedAttributes, WriteExtendedAttributes, Traverse</span>
<span style="color: #008000;"># ExecuteFile, DeleteSubdirectoriesAndFiles, ReadAttributes </span>
<span style="color: #008000;"># WriteAttributes, Write, Delete </span>
<span style="color: #008000;"># ReadPermissions, Read, ReadAndExecute </span>
<span style="color: #008000;"># Modify, ChangePermissions, TakeOwnership</span>
<span style="color: #008000;"># Synchronize, FullControl</span>
&nbsp;
<span style="color: #800080;">$StartingDir</span><span style="color: pink;">=</span><span style="color: #008080; font-weight: bold;">Read-Host</span> <span style="color: #800000;">&quot;What directory do you want to start at?&quot;</span>
&nbsp;
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$file</span> <span style="color: #0000FF;">in</span> $<span style="color: #000000;">&#40;</span><span style="color: #008080; font-weight: bold;">Get-ChildItem</span> <span style="color: #800080;">$StartingDir</span> <span style="color: #008080; font-style: italic;">-recurse</span> <span style="color: pink;">|</span> <span style="color: #0000FF;">where</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.PsIsContainer<span style="color: #000000;">&#125;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
  <span style="color: #800000;">&quot; &quot;</span>
  <span style="color: #800000;">&quot;Objekt: &quot;</span> <span style="color: pink;">+</span> <span style="color: #800080;">$file</span>.FullName
&nbsp;
  <span style="color: #800080;">$name</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Acl</span> <span style="color: #800080;">$file</span>.FullName <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">ForEach-Object</span> <span style="color: #000000;">&#123;</span> <span style="color: #000080;">$_</span>.Access  <span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Group-Object</span> IdentityReference <span style="color: pink;">|</span> <span style="color: pink;">%</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.Name<span style="color: #000000;">&#125;</span>
  <span style="color: #800080;">$rights</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Acl</span> <span style="color: #800080;">$file</span>.FullName <span style="color: pink;">|</span> <span style="color: pink;">%</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.Access<span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: pink;">%</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.FileSystemRights<span style="color: #000000;">&#125;</span>
  <span style="color: #800080;">$IsInherited</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Acl</span> <span style="color: #800080;">$file</span>.FullName <span style="color: pink;">|</span> <span style="color: pink;">%</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.Access<span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: pink;">%</span> <span style="color: #000000;">&#123;</span><span style="color: #000080;">$_</span>.InheritanceFlags<span style="color: #000000;">&#125;</span>
&nbsp;
  <span style="color: #0000FF;">for</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$i</span><span style="color: pink;">=</span><span style="color: #000000;">0</span>;$i <span style="color: #FF0000;">-lt</span> <span style="color: #800080;">$name</span>.count ;$i<span style="color: pink;">++</span><span style="color: #000000;">&#41;</span>
  <span style="color: #000000;">&#123;</span>
        <span style="color: #800000;">&quot;User: &quot;</span> <span style="color: pink;">+</span> <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span>
        <span style="color: #800000;">&quot;Rights: &quot;</span> <span style="color: pink;">+</span> <span style="color: #800080;">$rights</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span>
&nbsp;
        <span style="color: #008000;">#Insert your groups which will be replaced</span>
        <span style="color: #0000FF;">if</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span> <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;domain_A\Test&quot;</span> <span style="color: #FF0000;">-or</span> <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span> <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;domain_A\Test2&quot;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
                <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span> <span style="color: pink;">=</span> <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span>.Substring<span style="color: #000000;">&#40;</span><span style="color: #000000;">13</span><span style="color: #000000;">&#41;</span>
                <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;domain_B\&quot;</span><span style="color: pink;">+</span><span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">#type in the new domainname</span>
                <span style="color: #800080;">$acl</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Acl</span> <span style="color: #800080;">$file</span>.FullName
&nbsp;
                <span style="color: #800080;">$permission</span> <span style="color: pink;">=</span> <span style="color: #800080;">$name</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span><span style="color: pink;">,</span><span style="color: #800080;">$rights</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span><span style="color: pink;">,</span><span style="color: #800080;">$IsInherited</span><span style="color: #000000;">&#91;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&#93;</span><span style="color: pink;">,</span><span style="color: #800000;">&quot;None&quot;</span><span style="color: pink;">,</span><span style="color: #800000;">&quot;Allow&quot;</span>
                <span style="color: #800080;">$rule</span><span style="color: pink;">=</span><span style="color: #008080; font-weight: bold;">new-object</span> System.Security.AccessControl.FileSystemAccessRule <span style="color: #800080;">$permission</span>
&nbsp;
                <span style="color: #800080;">$acl</span>.SetAccessRule<span style="color: #000000;">&#40;</span><span style="color: #800080;">$rule</span><span style="color: #000000;">&#41;</span>
                <span style="color: #800080;">$acl</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Set-Acl</span> <span style="color: #800080;">$file</span>.FullName
&nbsp;
        <span style="color: #000000;">&#125;</span>
  <span style="color: #000000;">&#125;</span>
&nbsp;
 <span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2010/04/powershelldateisystemrechte-analog-bestehender-rechte-hinzufugen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[Exchange 2010]GUI Mailbox Übersicht</title>
		<link>http://codingstube.de/2010/04/exchange-2010gui-mailbox-ubersicht/</link>
		<comments>http://codingstube.de/2010/04/exchange-2010gui-mailbox-ubersicht/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 09:55:08 +0000</pubDate>
		<dc:creator>MS</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://codingstube.de/?p=772</guid>
		<description><![CDATA[Vielen ist es bekannt, dass die Exchange Server Konsole nur wenig Informationen über Postfächer ausgibt, zumindest, wenn man mehrere Postfächer vergleichen möchte. Powershell kann da schon mehr Infos gleichzeitig ausgeben, wobei hier die Übersichtlichkeit leidet. Mit Hilfe des Exchange Dev Blogs von Glen Scales habe ich eine neue GUI erstellt, welche sehr viele Infos über [...]]]></description>
			<content:encoded><![CDATA[<p align="center"><a class="thickbox" href="http://codingstube.de/wp-content/uploads/2010/04/Sumby-Full-2.png"><img alt="Sumby-Full" src="http://codingstube.de/wp-content/uploads/2010/04/sumby-full-2-small.png" width="450" height="337" /></a></p>
<p>Vielen ist es bekannt, dass die Exchange Server Konsole nur wenig Informationen über Postfächer ausgibt, zumindest, wenn man mehrere Postfächer vergleichen möchte. Powershell kann da schon mehr Infos gleichzeitig ausgeben, wobei hier die Übersichtlichkeit leidet.</p>
<p>Mit Hilfe des <a href="http://gsexdev.blogspot.com/">Exchange Dev Blogs</a> von Glen Scales habe ich eine neue GUI erstellt, welche sehr viele Infos über die Mailboxen auf einem oder mehreren Exchange-Servern darstellt. Z.B.: Kann nach Postfachgröße (Anzahl der Elemente oder der Speicherbelegung) sortiert werden. Eine Auflistung der Unterordner in einem Postfach ist auch möglich.</p>
<p>Einen Auszug von Filtern zeigt der folgende Screenshot:</p>
<p align="center"><img class="thickbox" alt="sumby-filters" src="http://codingstube.de/wp-content/uploads/2010/04/sumby-filters.png" width="138" height="173" /></p>
<p>Außerdem kann zwischen <em>verbundenen</em> und <em>nicht-verbundenen</em> Postfächern geschaltet werden:</p>
<p align="center"><img class="thickbox" alt="sumby-disconnected" src="http://codingstube.de/wp-content/uploads/2010/04/sumby-disconnected.png" width="450" height="143" /></p>
<p>Das Skript muss auf einem Exchange-Server ausgeführt werden. Getestet wurde es auf einem deutschen Exchange-Server 2010. Das Skript muss daher in diesen Ordner kopiert werden: <em>C:\Program Files\Microsoft\Exchange Server\V14\Scripts</em></p>
<p>Außerdem muss der ausführende Account Zugriffsberechtigungen auf den restlichen Postfächern besitzen.</p>
<p>Das Skript ist <a href="http://codingstube.de/downloads/sumby.zip">hier</a> zum Download verfügbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2010/04/exchange-2010gui-mailbox-ubersicht/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>{How-To}Out of Office über Exchange Server einstellen (Powershell)</title>
		<link>http://codingstube.de/2010/02/how-toout-of-office-uber-exchange-server-einstellen-powershell/</link>
		<comments>http://codingstube.de/2010/02/how-toout-of-office-uber-exchange-server-einstellen-powershell/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 11:08:29 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[autoresponder]]></category>
		<category><![CDATA[exchange]]></category>
		<category><![CDATA[out of office]]></category>
		<category><![CDATA[Outlook]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://codingstube.de/?p=723</guid>
		<description><![CDATA[Normalerweise ist es nur an einem Outlook Client oder über OWA möglich seinen eigenen Abwesenheits-Einstellungen zu ändern, bzw. eine automatische Antwort an den Sender zu schicken. In einem aktuellen Fall zieht Kunde X mit seinem Mailserver um. In dieser Umstellungszeit sollen nun alle Sender eine automatische Antwort erhalten, dass es eben zu Problemen kommen kann [...]]]></description>
			<content:encoded><![CDATA[<p>Normalerweise ist es nur an einem Outlook Client oder über OWA möglich seinen eigenen Abwesenheits-Einstellungen zu ändern, bzw. eine automatische Antwort an den Sender zu schicken.</p>
<p>In einem aktuellen Fall zieht Kunde X mit seinem Mailserver um. In dieser Umstellungszeit sollen nun alle Sender eine automatische Antwort erhalten, dass es eben zu Problemen kommen kann oder der Empfang von E-Mail&#8217;s nicht zu 100% gewährleistet ist.</p>
<p>Wie schon erwähnt, gibt es keine Transport-Regel o.ä. um so eine automatische-Antwort für bestimmte Postfächer zu setzen.  Dann bin ich auf das Glen&#8217;s <a href="http://gsexdev.blogspot.com/" target="_blank">Exchange Dev Blog</a> aufmerksam geworden. Glen Scales hat eine Library geschrieben (<strong>EWSOofUtil.dll</strong>), die es für einen Administrator ermöglicht, die Automatische Antwort für jeder Postfach über EWS zu setzen.</p>
<p>Wie es funktioniert, erkläre ich im Folgenden:</p>
<p><span id="more-723"></span></p>
<p>Als erstes braucht ihr die <strong>EWSOofUtil.dll</strong>:</p>
<p><a href="http://go2.wordpress.com/?id=725X1342&amp;site=telnetport25.wordpress.com&amp;url=http%3A%2F%2Fmsgdev.mvps.org%2Fexdevblog%2FEWSOofUtil.zip" target="_blank">EWSOofUtil.dll [92.3KB] –enthält auch den Quellcode</a></p>
<p>Als nächstes müsst ihr euren Client Access Server (CAS) das Ausführen von Scripten erlauben:</p>
<blockquote><p><span style="color: #3366ff;"><strong><em>set-ExecutionPolicy RemoteSigned</em></strong></span></p></blockquote>
<p>Um Änderungen an einem Postfach durchzuführen, müsst ihr die Berechtigung daran haben:</p>
<blockquote><p><span style="color: #3366ff;"><strong>Add-MailboxPermission &#8220;test.user&#8221; -User &#8220;Administrator&#8221; -AccessRights FullAccess</strong></span></p></blockquote>
<p>Hier gebe ich dem Administrator volle Berechtigung auf das Postfach von test.user.</p>
<p>Nun können wir die Oof-Einstellungen setzen:</p>
<blockquote><p><span style="color: #3366ff;"><strong>[Reflection.Assembly]::LoadFile(&#8220;C:\Users\administrator\Desktop\EWSOofUtil\EWSOofUtil.dll&#8221;)<br />
$ExternalMessage=&#8221;I&#8217;m out of office!&#8221;<br />
$oofutil = new-object EWSOofUtil.OofUtil<br />
$oofutil.setoof(&#8220;test.user@test.org&#8221;,&#8221;Enabled&#8221;,&#8221;",$ExternalMessage)</strong></span></p></blockquote>
<ul>
<li>Als erstes müsst ihr die dll in die Powershell laden</li>
<li>Danach wird die Nachricht gesetzt, hier kann auch kompletter html Code genommen werden. Einfach über $ExternalMessage = &#8220;&lt;html&gt;&lt;&#8230;&gt;&lt;/html&gt;&#8221;</li>
<li>Der letzte Befehl setzt die automatische Antwort für den User: &#8220;test.user&#8221; mit der externen Nachricht</li>
</ul>
<p>Weitere Befehle können auch die Zeit einstellen, wann diese Nachricht gesendet wird:</p>
<blockquote><p><span style="color: #3366ff;"><strong>$oofutil.setoof(&#8220;test.user@test.org&#8221;,&#8221;Scheduled&#8221;, [datetime]::Now.Date.ToLocalTime(),[datetime]::Now.Date.AddDays(4).ToLocalTime())</strong></span></p></blockquote>
<p>Überprüfen kann man es dann im OWA:</p>
<p><a href="http://codingstube.de/wp-content/uploads/2010/02/oof.png"><img class="aligncenter size-full wp-image-728" title="oof" src="http://codingstube.de/wp-content/uploads/2010/02/oof.png" alt="" width="458" height="236" /></a></p>
<p>Weitere Beispiele für den Einsatz der dll findet ihr hier:</p>
<p><a href="http://msgdev.mvps.org/setoofexamples.htm">http://msgdev.mvps.org/setoofexamples.htm</a></p>
<p>So kann man mit schönen Powershell Skripts eine automatische Wartungsmeldung an alle Postfächer binden.</p>
<blockquote><p><span style="color: #3366ff;"><strong>$users = Get-Mailbox -Filter (&#8220;customAttribute1 -eq &#8216;Firma1&#8242;&#8221;)<br />
$email = $users | % {$_.userprincipalname}</strong></span></p>
<p><span style="color: #3366ff;"><strong>$emails = $users | % {$_.userprincipalname}</strong></span></p>
<p><span style="color: #3366ff;"><strong>foreach($mail in $emails){$oofutil.setoof($mail,&#8221;Enabled&#8221;,&#8221;",$ExternalMessage)}</strong></span></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2010/02/how-toout-of-office-uber-exchange-server-einstellen-powershell/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>{MAC-App}Mehrere Dateien umbennen lassen</title>
		<link>http://codingstube.de/2010/01/mac-appmehrere-dateien-umbennen-lassen/</link>
		<comments>http://codingstube.de/2010/01/mac-appmehrere-dateien-umbennen-lassen/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 15:29:43 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[datei]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[name]]></category>

		<guid isPermaLink="false">http://codingstube.de/?p=718</guid>
		<description><![CDATA[Ich hatte heute den Fall, dass ich eine Reihe von Dateien hatte, die keine Datei-Endung besaßen. Also habe ich schnell ein Automator-Programm zusammen geschustert, welches euch die Arbeit abnimmt. Zuerst müsst ihr die Dateien auswählen, welche umbenannt werden sollen: Danach werdet ihr aufgefordert, inwiefern der Dateinamen geändert werden soll: Hier findet ihr das Programm zum [...]]]></description>
			<content:encoded><![CDATA[<p>Ich hatte heute den Fall, dass ich eine Reihe von Dateien hatte, die keine Datei-Endung besaßen.</p>
<p>Also habe ich schnell ein Automator-Programm zusammen geschustert, welches euch die Arbeit abnimmt.</p>
<p>Zuerst müsst ihr die Dateien auswählen, welche umbenannt werden sollen:</p>
<p><a class="thickbox" href="http://codingstube.de/wp-content/uploads/2010/01/screen-capture-1.png"><img class="alignnone size-full wp-image-719" title="Dateien auswählen" src="http://codingstube.de/wp-content/uploads/2010/01/screen-capture-1.png" alt="" width="541" height="402" /></a></p>
<p>Danach werdet ihr aufgefordert, inwiefern der Dateinamen geändert werden soll:</p>
<p><a class="thickbox" href="http://codingstube.de/wp-content/uploads/2010/01/screen-capture-2.png"><img class="alignnone size-full wp-image-720" title="Änderung" src="http://codingstube.de/wp-content/uploads/2010/01/screen-capture-2.png" alt="" width="573" height="260" /></a></p>
<p>Hier findet ihr das Programm zum Download:</p>
<p><a href="http://codingstube.de/downloads/ChangeFileName.app.zip">Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2010/01/mac-appmehrere-dateien-umbennen-lassen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>de Hangman 1.6 und Glüxrad 1.2 Updates unterwegs</title>
		<link>http://codingstube.de/2009/11/de-hangman-1-6-und-gluxrad-1-2-updates-unterwegs/</link>
		<comments>http://codingstube.de/2009/11/de-hangman-1-6-und-gluxrad-1-2-updates-unterwegs/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 11:27:42 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[Appstore]]></category>

		<guid isPermaLink="false">http://codingstube.de/?p=678</guid>
		<description><![CDATA[Heute konnte ich zwei neue Versionen für de Hangman und Glüxrad an Apple versenden. Changelog: Kindersound bei Lösung des Rätsels ausgetauscht kleine Designverbesserung Changelog: Zu bestätigende Meldungen bei einem nicht vorhandenen Buchstaben entfernt Sprechblasen hinzugefügt: Zeigen an welcher Buchstabe gewählt wurde, keine extra Bestätigung mehr nötig]]></description>
			<content:encoded><![CDATA[<p>Heute konnte ich zwei neue Versionen für de Hangman und Glüxrad an Apple versenden.</p>
<p><img class="alignnone" title="de Hangman" src="http://codingstube.de/wp-content/uploads/2009/06/2009-2d06-2d10-0743.png" alt="" width="252" height="109" /></p>
<p>Changelog:</p>
<ul>
<li>Kindersound bei Lösung des Rätsels ausgetauscht</li>
</ul>
<ul>
<li>kleine Designverbesserung</li>
</ul>
<p><img class="alignnone size-full wp-image-598" title="Glüxrad" src="http://codingstube.de/wp-content/uploads/2009/07/screen-capture1.png" alt="Glüxrad" width="108" height="107" /></p>
<p>Changelog:</p>
<ul>
<li> Zu bestätigende Meldungen bei einem nicht vorhandenen Buchstaben entfernt</li>
<li>Sprechblasen hinzugefügt: Zeigen an welcher Buchstabe gewählt wurde, keine extra Bestätigung mehr nötig</li>
</ul>
<p><img class="alignnone size-full wp-image-679" title="Sprechblasen Glüxrad 1.2" src="http://codingstube.de/wp-content/uploads/2009/11/IMG_0123.PNG" alt="Sprechblasen Glüxrad 1.2" width="320" height="480" /> <img class="alignnone size-full wp-image-680" title="Sprechblase Glüxrad 1.2" src="http://codingstube.de/wp-content/uploads/2009/11/IMG_0124.PNG" alt="Sprechblase Glüxrad 1.2" width="320" height="480" /></p>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/11/de-hangman-1-6-und-gluxrad-1-2-updates-unterwegs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Auslesen von Drucker Informationen (VBScript)</title>
		<link>http://codingstube.de/2009/11/auslesen-von-drucker-informationen-vbscript/</link>
		<comments>http://codingstube.de/2009/11/auslesen-von-drucker-informationen-vbscript/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 15:41:51 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://codingstube.de/2009/11/auslesen-von-drucker-informationen-vbscript/</guid>
		<description><![CDATA[Heute bin ich auf das Problem gestossen, dass ich auf mehreren Terminalservern einige Informationen von Druckern brauchte. Das per Hand  abzuschreiben, ist natürlich verschwendete Zeit. Nach kurzer Recherche bin ich auf diverse Scripts gestoßen. Powershell und VBScripts. Da es sich bei den Servern um 2003er handelt, ist kein Powershell installiert. Somit habe ich mich für [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://codingstube.de/wp-content/uploads/2009/11/script.jpg" border="0" alt="Script" width="127" height="127" align="left" /></p>
<p style="text-align: right;">Heute bin ich auf das Problem gestossen, dass ich auf mehreren Terminalservern einige Informationen von Druckern brauchte. Das per Hand  abzuschreiben, ist natürlich verschwendete Zeit.</p>
<p style="text-align: right;">Nach kurzer Recherche bin ich auf diverse Scripts gestoßen.</p>
<p style="text-align: right;">Powershell und VBScripts. Da es sich bei den Servern um 2003er handelt, ist kein Powershell installiert. Somit habe ich mich für ein VBScript entschieden.</p>
<p>Folgende Daten werden ausgelesen:</p>
<ul>
<li>Druckername</li>
<li>Freigabename</li>
<li>Treibername</li>
<li>Anschluss</li>
<li>Ort</li>
<li>Beschreibung</li>
<li>Systemname</li>
<li>Druckprozessor</li>
</ul>
<p>Diese Daten werden in der Kommandozeile ausgegeben. Mir reichten eigentlich nur folgende Daten:</p>
<ul>
<li>Druckername</li>
<li>Portname</li>
<li>Ort</li>
<li>Beschreibung</li>
</ul>
<p>Diese Ausgabe sollte in einer Textdatei erfolgen und wird standardmäßig unter C:\temp\xxx.txt geschrieben.</p>
<p>Hier das komplette Skript:</p>
<blockquote><p><span class="ContentBody"><span style="FONT-FAMILY: Verdana"><em>strComputer = &#8220;.&#8221;</em></span></span></p>
<p><em>Set objWMIService = GetObject(&#8220;winmgmts:&#8221; _<br />
&amp; &#8220;{impersonationLevel=impersonate}!\\&#8221; &amp; strComputer &amp; &#8220;\root\cimv2&#8243;)</em></p>
<p><em>Set colInstalledPrinters = objWMIService.ExecQuery _<br />
(&#8220;SELECT * FROM Win32_Printer&#8221;)</em></p>
<p><em>Set WshNetwork = WScript.CreateObject(&#8220;WScript.Network&#8221;)</em></p>
<p><em>WScript.Echo(&#8220;This Computer&#8217;s Name = &#8221; &amp; WshNetwork.ComputerName)</em></p>
<p><em>Set fso = CreateObject(&#8220;scripting.filesystemobject&#8221;)<br />
set txtfile = fso.OpenTextFile(&#8220;c:\temp\Drucker_von_&#8221; &amp; strComputer &amp; &#8220;.txt&#8221;, 2, True) </em></p>
<p><em><br />
For Each objPrinter in colInstalledPrinters</em></p>
<p><em> If (objPrinter.Attributes AND 4) = 4 then<br />
WScript.Echo(&#8220;*****&gt; Default printer &#8212; Start&#8221;)<br />
Else<br />
WScript.Echo(&#8220;&#8212;&#8221;)<br />
End If</em></p>
<p><em> WScript.Echo(&#8220;Name: &#8221; &amp; objPrinter.Name)<br />
WScript.Echo(&#8220;Share name: &#8221; &amp; objPrinter.ShareName)<br />
WScript.Echo(&#8220;Driver name: &#8221; &amp; objPrinter.DriverName)<br />
WScript.Echo(&#8220;Caption: &#8221; &amp; objPrinter.Caption)<br />
WScript.Echo(&#8220;Port: &#8221; &amp; objPrinter.PortName)<br />
WScript.Echo(&#8220;Location: &#8221; &amp; objPrinter.Location)<br />
WScript.Echo(&#8220;Description: &#8221; &amp; objPrinter.Description)</em></p>
<p><em>WScript.Echo(&#8220;System name: &#8221; &amp; objPrinter.SystemName)<br />
WScript.Echo(&#8220;Print processor: &#8221; &amp; objPrinter.PrintProcessor)</em></p>
<p><em> txtfile.WriteLine(&#8220;Name: &#8221; &amp; objPrinter.Name &amp; &#8220;, Port: &#8221; &amp; objPrinter.PortName &amp; &#8220;, Location: &#8221; &amp; objPrinter.Location &amp; &#8220;,Description: &#8221; &amp; objPrinter.Description)</em></p>
<p><em> </em></p>
<p><em> If (objPrinter.Attributes AND 4) = 4 then<br />
WScript.Echo(&#8220;*****&gt; Default printer &#8212; End&#8221;)<br />
Else<br />
WScript.Echo(&#8220;&#8212;&#8221;)<br />
End If</em></p>
<p><em>Next<br />
txtfile.Close</em></p></blockquote>
<p dir="ltr"><span class="ContentBody"><span style="FONT-FAMILY: Verdana">Diese Zeile in Notepad einfügen und als vbs-Datei speichern.</span></span></p>
<p dir="ltr"><span class="ContentBody"><span style="FONT-FAMILY: Verdana">Aufruf über die Kommandozeile: csscript.exe scriptname.vbs.</span></span></p>
<p dir="ltr"><span class="ContentBody"><span style="FONT-FAMILY: Verdana"> </span></span></p>
<div class="bjtags">Tags:  <a rel="tag" href="http://codingstube.de/tag/server">server</a>, <a rel="tag" href="http://codingstube.de/tag/vb">vb</a>, <a rel="tag" href="http://codingstube.de/tag/skript">skript</a></div>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/11/auslesen-von-drucker-informationen-vbscript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>GlüxRad in Version 1.1 im Appstore eingetroffen</title>
		<link>http://codingstube.de/2009/11/gluxrad-in-version-1-1-im-appstore-eingetroffen/</link>
		<comments>http://codingstube.de/2009/11/gluxrad-in-version-1-1-im-appstore-eingetroffen/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 09:43:46 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Spiele]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Appstore]]></category>
		<category><![CDATA[glücksrad]]></category>
		<category><![CDATA[gluecksrad]]></category>

		<guid isPermaLink="false">http://codingstube.de/?p=665</guid>
		<description><![CDATA[Das Update für GlüxRad ist nun im Appstore verfügbar. Änderungen können hier nachgelesen werden: Infos. Video der Änderungen:]]></description>
			<content:encoded><![CDATA[<p>Das Update für GlüxRad ist nun im Appstore verfügbar.</p>
<p>Änderungen können hier nachgelesen werden: <a href="http://codingstube.de/2009/11/gluxrad-update-1-1-unterwegs-u-a-firmware-2-x-kompatibel/">Infos</a>.</p>
<p><img class="alignnone size-full wp-image-666" title="iTunes" src="http://codingstube.de/wp-content/uploads/2009/11/screen-capture.png" alt="iTunes" width="381" height="230" /></p>
<p>Video der Änderungen:</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/mzC8S0hi1PY&#038;hl=de_DE&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/mzC8S0hi1PY&#038;hl=de_DE&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/11/gluxrad-in-version-1-1-im-appstore-eingetroffen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Glüxrad Update 1.1 unterwegs (u.a. Firmware 2.x kompatibel)</title>
		<link>http://codingstube.de/2009/11/gluxrad-update-1-1-unterwegs-u-a-firmware-2-x-kompatibel/</link>
		<comments>http://codingstube.de/2009/11/gluxrad-update-1-1-unterwegs-u-a-firmware-2-x-kompatibel/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 11:12:45 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://codingstube.de/2009/11/gluxrad-update-1-1-unterwegs-u-a-firmware-2-x-kompatibel/</guid>
		<description><![CDATA[&#160; &#160; &#160; &#160; &#160; Gestern ging das Update nach Apple und bringt folgende Neuerungen mit: Neue Features: &#160;- Es wird zwischen den Runden gespeichert&#160;- Sounds und Musik hinzugefügt&#160;- Animationen erweitert&#160;- Rätsel erweitert&#160;- Neue Computernamen hinzugefügt&#160;- Firmware 2.x kompatibel Bugfixing: &#160;- falsche Rätsel entfernt&#160;- Vokale teilweise nicht anwählbar, obwohl man mehr als 300&#8364; hatte&#160;- kleinere [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="Glüxrad" src="http://codingstube.de/wp-content/uploads/2009/11/2009_2D11_2D02_1158.png" align="left" border="0" />&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Gestern ging das Update nach Apple und bringt folgende Neuerungen mit:</p>
<blockquote>
<p>Neue Features:</p>
<p>&nbsp;- Es wird zwischen den Runden gespeichert<br />&nbsp;- Sounds und Musik hinzugefügt<br />&nbsp;- Animationen erweitert<br />&nbsp;- Rätsel erweitert<br />&nbsp;- Neue Computernamen hinzugefügt<br />&nbsp;- Firmware 2.x kompatibel</p>
<p>Bugfixing:</p>
<p>&nbsp;- falsche Rätsel entfernt<br />&nbsp;- Vokale teilweise nicht anwählbar, obwohl man mehr als 300&euro; hatte<br />&nbsp;- kleinere Bugs entfernt</p>
</blockquote>
<p dir="ltr">&nbsp;</p>
<p dir="ltr">&nbsp;</p>
<div class="bjtags">Tags:  <a rel="tag" href="http://codingstube.de/tag/iphone">iphone</a>, <a rel="tag" href="http://codingstube.de/tag/app">app</a>, <a rel="tag" href="http://codingstube.de/tag/appstore">appstore</a></div>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/11/gluxrad-update-1-1-unterwegs-u-a-firmware-2-x-kompatibel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Video zur GlüxRad App Version: 1.1b</title>
		<link>http://codingstube.de/2009/10/video-zur-gluxrad-app-version-1-1b/</link>
		<comments>http://codingstube.de/2009/10/video-zur-gluxrad-app-version-1-1b/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 11:28:02 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://codingstube.de/2009/10/video-zur-gluxrad-app-version-1-1b/</guid>
		<description><![CDATA[Hier seht ihr mal ein kleines Video zur GlüxRad App in der Version 1.1b (zur Zeit im Appstore 1.0): &#160; Tags: glücksrad, gluecksrad, appstore]]></description>
			<content:encoded><![CDATA[<p>Hier seht ihr mal ein kleines Video zur GlüxRad App in der Version 1.1b (zur Zeit im Appstore 1.0):</p>
<p><embed src="http://www.youtube.com/v/kqM_49A_5g4" width="425" height="350" type="application/x-shockwave-flash"></embed></p>
<p>&nbsp;</p>
<div class="bjtags">Tags:  <a rel="tag" href="http://codingstube.de/tag/glücksrad">glücksrad</a>, <a rel="tag" href="http://codingstube.de/tag/gluecksrad">gluecksrad</a>, <a rel="tag" href="http://codingstube.de/tag/appstore">appstore</a></div>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/10/video-zur-gluxrad-app-version-1-1b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GlüxRad App jetzt erhältlich im Appstore</title>
		<link>http://codingstube.de/2009/10/gluxrad-app-jetzt-erhaltlich-im-appstore/</link>
		<comments>http://codingstube.de/2009/10/gluxrad-app-jetzt-erhaltlich-im-appstore/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 08:42:09 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://codingstube.de/2009/10/gluxrad-app-jetzt-erhaltlich-im-appstore/</guid>
		<description><![CDATA[Heute morgen wurde meine App freigegeben. Weitere Infos findet ihr hier: Zur App direkt geht es hier entlang: &#160; Tags: app, neu]]></description>
			<content:encoded><![CDATA[<p>Heute morgen wurde meine App freigegeben. </p>
<p>Weitere Infos findet ihr hier:</p>
<p><font color="#810081"><a href="http://codingstube.de/gluexrad/"><img alt="" src="http://codingstube.de/wp-content/uploads/2009/07/screen-capture1.png" border="0" /></font></a></p>
<p>Zur App direkt geht es hier entlang:</p>
<p><font color="#0000ff"><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=334557192&amp;mt=8"><img alt="" src="http://codingstube.de/wp-content/uploads/2009/10/2009-10-21_0756.png" border="0" /></font></a></p>
<p>&nbsp;</p>
<div class="bjtags">Tags:  <a rel="tag" href="http://codingstube.de/tag/app">app</a>, <a rel="tag" href="http://codingstube.de/tag/neu">neu</a></div>
]]></content:encoded>
			<wfw:commentRss>http://codingstube.de/2009/10/gluxrad-app-jetzt-erhaltlich-im-appstore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
