<?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>Le blog de Jeanffy</title>
	<atom:link href="http://www.jeanffy.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.jeanffy.com/blog</link>
	<description>Le développement, jour après jour</description>
	<lastBuildDate>Mon, 14 Dec 2009 17:44:37 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Coda : différences d&#8217;un fichier avec le serveur FTP</title>
		<link>http://www.jeanffy.com/blog/archives/165</link>
		<comments>http://www.jeanffy.com/blog/archives/165#comments</comments>
		<pubDate>Sat, 30 May 2009 06:34:13 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Coda]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=165</guid>
		<description><![CDATA[Voici un script AppleScript pour le logiciel Coda, qui permettra de visualiser les différences d&#8217;un fichier local avec la version du serveur FTP.
Quand on modifie un fichier, celui-ci se place en statut &#171;&#160;Marked for publishing&#160;&#187; (avec un bouton permettant d&#8217;uploader le fichier sur le serveur). Dans ce cas, il suffira d&#8217;ouvrir le fichier dans Coda [...]]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/165/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Afficher une &#171;&#160;message box&#160;&#187; avec un format comme printf</title>
		<link>http://www.jeanffy.com/blog/archives/155</link>
		<comments>http://www.jeanffy.com/blog/archives/155#comments</comments>
		<pubDate>Thu, 26 Mar 2009 18:42:30 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[MFC]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[message box]]></category>
		<category><![CDATA[visual]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=155</guid>
		<description><![CDATA[Avec Visual C++/MFC, pour afficher une message box avec un format, comme on peut le faire avec la fonction printf :
#define BUFF_MAX 1024
static TCHAR stpcMsg[BUFF_MAX];
void FMessageBox(TCHAR *format, ...)
{
  va_list args;
  va_start(args, format);
  vswprintf_s(stpcMsg, BUFF_MAX, format, args);
  va_end(args);
  CString sMsg(stpcMsg);
  AfxMessageBox(sMsg);
}

]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/155/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Supprimer tous les dossiers .svn</title>
		<link>http://www.jeanffy.com/blog/archives/159</link>
		<comments>http://www.jeanffy.com/blog/archives/159#comments</comments>
		<pubDate>Sun, 15 Mar 2009 12:36:55 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[Shell]]></category>
		<category><![CDATA[SVN]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=159</guid>
		<description><![CDATA[Pour supprimer tous les dossiers .svn récursivement dans une &#171;&#160;working copy&#160;&#187; subversion :
find $1 -name .svn &#124; while read entry
do
	rm -rf $entry
done

Sauvegarder ceci dans un fichier qui aura les droits d&#8217;exécution (par exemple rmsvn.sh)
Utilisation : rmsvn.sh /path/to/folder/
Il est également possible de faire :
find $1 -name .svn -exec rm -rf {} \;

Cette commande fonctionne mais génère [...]]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/159/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fonction random entre deux bornes</title>
		<link>http://www.jeanffy.com/blog/archives/152</link>
		<comments>http://www.jeanffy.com/blog/archives/152#comments</comments>
		<pubDate>Tue, 10 Mar 2009 12:12:55 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[C/C++]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=152</guid>
		<description><![CDATA[En C, pour générer un nombre aléatoire entier entre deux bornes entières :
int irandom(int min, int max)
{
  return (int)((((double)rand() / (double)RAND_MAX) * max + min));
}

]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/152/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tester l&#8217;existence d&#8217;un fichier</title>
		<link>http://www.jeanffy.com/blog/archives/149</link>
		<comments>http://www.jeanffy.com/blog/archives/149#comments</comments>
		<pubDate>Sun, 08 Mar 2009 10:31:26 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[C/C++]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=149</guid>
		<description><![CDATA[En C, une manière de tester rapidement l&#8217;existence d&#8217;un fichier ou d&#8217;un dossier
bool FileExists(const TCHAR* pcFilePath)
{
  return (_taccess(pcFilePath, 00) == 0);
}

]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/149/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Utiliser PHP en ligne de commande</title>
		<link>http://www.jeanffy.com/blog/archives/145</link>
		<comments>http://www.jeanffy.com/blog/archives/145#comments</comments>
		<pubDate>Wed, 04 Mar 2009 21:30:35 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=145</guid>
		<description><![CDATA[En utilisant PHP en ligne de commande, pour récupérer une entrée de l&#8217;utilisateur :
function input()
{
	$fp = fopen("con", "rb");
	$input = fgets($fp, 255);
	fclose($fp);
	return str_replace("rn", "", $input);
}

]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/145/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exporter des morceaux d&#8217;iTunes</title>
		<link>http://www.jeanffy.com/blog/archives/139</link>
		<comments>http://www.jeanffy.com/blog/archives/139#comments</comments>
		<pubDate>Tue, 17 Feb 2009 20:42:55 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[export]]></category>
		<category><![CDATA[iTunes]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=139</guid>
		<description><![CDATA[
Voici un script qui permet d&#8217;exporter les morceaux actuellement sélectionnés dans iTunes dans un dossier.

try
  tell application "iTunes"
    set selectedTracks to selection
    if ((count selectedTracks) > 0) then
      set destFolder to choose folder with
        prompt "Sélectionner [...]]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/139/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cocoa : récupérer la date d&#8217;un fichier</title>
		<link>http://www.jeanffy.com/blog/archives/113</link>
		<comments>http://www.jeanffy.com/blog/archives/113#comments</comments>
		<pubDate>Thu, 12 Feb 2009 19:55:35 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[NSCalendarDate]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=113</guid>
		<description><![CDATA[Il existe certainement mieux, mais c&#8217;est pour l&#8217;instant tout ce que j&#8217;ai trouvé pour récupérer la date de modification d&#8217;un fichier :
NSString* filePath;
NSCalendarDate* fileDate;
struct stat sStat;
if (stat([filePath UTF8String], &#38;sStat) == 0)
{
  time_t filetmt = sStat.st_mtimespec.tv_sec;
  struct tm* filetm = localtime(&#38;(filetmt));
  fileDate = [[NSCalendarDate dateWithYear:filetm-&#62;tm_year+1900
         [...]]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/113/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Se débarraser des fichiers bloqués par Windows</title>
		<link>http://www.jeanffy.com/blog/archives/76</link>
		<comments>http://www.jeanffy.com/blog/archives/76#comments</comments>
		<pubDate>Wed, 11 Feb 2009 12:30:58 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Explorateur]]></category>
		<category><![CDATA[Unlocker]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=76</guid>
		<description><![CDATA[Pour pallier à cette erreur fréquente : &#8216;Impossible de supprimer Fichier : Cette ressource est utilisée par une autre personne ou un autre programme&#8217;, utiliser le programme Unlocker.
]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/76/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exemple d&#8217;utilisation de PHPTAL</title>
		<link>http://www.jeanffy.com/blog/archives/100</link>
		<comments>http://www.jeanffy.com/blog/archives/100#comments</comments>
		<pubDate>Tue, 10 Feb 2009 19:53:13 +0000</pubDate>
		<dc:creator>jeanffy</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHPTAL]]></category>
		<category><![CDATA[Template]]></category>

		<guid isPermaLink="false">http://www.jeanffy.com/blog/?p=100</guid>
		<description><![CDATA[Voici un exemple de site utilisant PHPTAL avec :

un template pour le squelette de chaque page,
un template pour le menu,
un template pour chaque page du site.

Télécharger le zip
]]></description>
		<wfw:commentRss>http://www.jeanffy.com/blog/archives/100/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

