<?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>words</title>
	<atom:link href="http://www.curlybrace.com/words/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.curlybrace.com/words</link>
	<description>by Jeff Fitzsimons</description>
	<lastBuildDate>Mon, 24 Dec 2012 06:57:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Microsoft IME for Japanese Input</title>
		<link>http://www.curlybrace.com/words/2012/12/23/microsoft-ime-for-japanese-input/</link>
		<comments>http://www.curlybrace.com/words/2012/12/23/microsoft-ime-for-japanese-input/#comments</comments>
		<pubDate>Sun, 23 Dec 2012 23:45:21 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[日本語]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=930</guid>
		<description><![CDATA[I&#8217;ve found the keyboard shortcuts for the Microsoft IME (Input Method Editor) to be poorly documented. I&#8217;ve tried to collect all of them here. Switching Between Input Languages These keyboard shortcuts switch between, for example, English and Japanese input languages. &#8230; <a href="http://www.curlybrace.com/words/2012/12/23/microsoft-ime-for-japanese-input/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve found the keyboard shortcuts for the Microsoft IME (Input Method Editor) to be poorly documented.  I&#8217;ve tried to collect all of them here.</p>
<h3>Switching Between Input Languages</h3>
<p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/MicrosoftIME_JapaneseInputLanguageMenu.png" alt="MicrosoftIME_JapaneseInputLanguageMenu" width="191" height="118" class="alignright size-full wp-image-2122" />These keyboard shortcuts switch between, for example, English and Japanese input languages.  This is equivalent to clicking on the language abbreviation (e.g. EN, JP) in the IME Toolbar.</p>
<blockquote style="font-style: normal"><p>
<tt>Left Alt + Shift</tt> or<br />
<tt>Ctrl + Shift</tt> or<br />
<tt>Grave Accent</tt> (`) &#8211; switch input language (default is <tt>Left Alt + Shift</tt>)</p>
<p><tt>Ctrl + Shift</tt> or<br />
<tt>Left Alt + Shift</tt> or<br />
<tt>Grave Accent</tt> (`) &#8211; switch keyboard layout (not assigned by default).  An example of usage would be to switch between &#8220;US&#8221; and the &#8220;United States &#8211; International&#8221; keyboard layouts, assuming they have been configured in Text Services and Input Languages.
</p></blockquote>
<h3>Switching Between Input Modes</h3>
<p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/MicrosoftIME_JapaneseInputMenu.png" alt="MicrosoftIME_JapaneseInputMenu" width="220" height="186" class="alignright size-full wp-image-2118" />Once Japanese language input is selected, the following shortcuts can be used to change the input mode between hiragana, katakana, and alphanumeric.  This is equivalent to clicking on the input menu in the IME bar:</p>
<blockquote style="font-style: normal"><p>
<tt>Ctrl + Caps Lock</tt> &#8211; switch to hiragana</p>
<p><tt>Alt + Caps Lock</tt> &#8211; switch to katakana</p>
<p><tt>Shift + Caps Lock</tt> &#8211; switch between full-width hiragana and full-width alphanumeric (romaji).</p>
<p><tt>Alt + Grave Accent</tt> (`) &#8211; switch between kana and half-width alphanumeric (romaji).
</p></blockquote>
<h3>String Conversion</h3>
<p>When typing using IME, while a sequence is still underlined, these shortcuts can be used to convert the underlined portion between hiragana, katakana, romaji, both full- and half-width.  Note that these conversions cannot be performed after moving on to the next input block (i.e., it is not possible to double-click and existing word and convert it).</p>
<blockquote style="font-style: normal"><p>
<tt>F6</tt> -　converts to hiragana:</p>
<blockquote style="font-style: normal"><p>ホワイト becomes ほわいと</p></blockquote>
<p><tt>F7</tt> &#8211; converts to katakana:</p>
<blockquote style="font-style: normal"><p>ほわいと becomes ホワイト</p></blockquote>
<p><tt>F8</tt> &#8211; converts to half-width katakana:</p>
<blockquote style="font-style: normal"><p>ホワイト becomes ﾎﾜｲﾄ</p></blockquote>
<p><tt>F9</tt> &#8211; converts to full-width romaji, press again for all-capitals, then again for proper noun capitalization:</p>
<blockquote style="font-style: normal"><p>ホワイト becomes ｈｏｗａｉｔｏ, press F9 again for ＨＯＷＡＩＴＯ, and again for Ｈｏｗａｉｔｏ</p></blockquote>
<p><tt>F10</tt> &#8211; convert to half-width romaji, press again for all-capitals, and again for proper noun capitalization:</p>
<blockquote style="font-style: normal"><p>ホワイト becomes howaito, press F10 again for HOWAITO, and again for Howaito</p></blockquote>
</blockquote>
<h4>More Conversion Examples</h4>
<blockquote style="font-style: normal"><p>
Typing katakana, then pressing F10 and F7 alternately will convert the string back and forth between katakana and half-width romaji.</p>
<p>Typing hiragana, then pressing F10 and F6 alternately will convert the string back and forth between hiragana and half-width romaji.</p>
<p>Typing hiragana, then pressing F7 and F6 alternately will convert the string between hiragana and katakana.</p>
<p>Typing katakana, then pressing F6 and F7 alternately will convert the string between katakana and hiragana.
</p></blockquote>
</blockquote>
<h3>Quotes</h3>
<p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/MicrosoftIME_QuoteCharacters.png" alt="MicrosoftIME_QuoteCharacters" width="226" height="250" class="alignright size-full wp-image-2138" />Basic opening and closing quotes (「」), type the left and right bracket (<tt>[</tt>, <tt>]</tt>), respectively.  To access more quote styles, type the open or closing bracket, then press the space bar for the conversion menu.  Another option is to type <tt>kakko</tt> (Japanese for &#8220;brackets&#8221;), press the space bar for the completion menu, and scroll down.</p>
<blockquote style="font-style: normal"><p>
「」　〈〉　《》
</p></blockquote>
<h3>Katakana-specific Shortcuts</h3>
<p>These shortcuts only have meaning in the katakana input mode.</p>
<blockquote style="font-style: normal"><p>
Long vowel &#8211; press the &#8216;minus&#8217; key (next to equals on US keyboards):</p>
<blockquote style="font-style: normal"><p>ソーダ (soda)</p></blockquote>
<p>Separator &#8211; type a forward slash &#8216;/&#8217;:</p>
<blockquote style="font-style: normal"><p>ジョン・ホワイト (John White)</p></blockquote>
<p>Traditionally, Japanese doesn&#8217;t have a &#8220;ti&#8221; sound, so it was translated as チ (chi, e.g. ticket becomes &#8220;チケット&#8221;, &#8220;chiketo&#8221;).  In order to write &#8216;ti&#8217;, type <tt>thi</tt> or <tt>texi</tt>.  For &#8216;di&#8217;, type <tt>dhi</tt> or <tt>dexi</tt>.  </p>
<blockquote style="font-style: normal"><p>ティ・ディ</p></blockquote>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2012/12/23/microsoft-ime-for-japanese-input/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting Global C++ Include Paths in Visual Studio 2012 (and 2011, and 2010)</title>
		<link>http://www.curlybrace.com/words/2012/12/17/setting-global-c-include-paths-in-visual-studio-2012-and-2011-and-2010/</link>
		<comments>http://www.curlybrace.com/words/2012/12/17/setting-global-c-include-paths-in-visual-studio-2012-and-2011-and-2010/#comments</comments>
		<pubDate>Mon, 17 Dec 2012 22:20:42 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=2091</guid>
		<description><![CDATA[Starting with Visual Studio 2010, Microsoft decided to make life hard on C++ developers.  System-wide include path settings used to be accessed through Tools &#124; Options &#124; Projects and Solutions &#124; VC++ Directories.  However, that option is gone: Instead, the &#8230; <a href="http://www.curlybrace.com/words/2012/12/17/setting-global-c-include-paths-in-visual-studio-2012-and-2011-and-2010/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Starting with Visual Studio 2010, Microsoft decided to make life hard on C++ developers.  System-wide include path settings used to be accessed through Tools | Options | Projects and Solutions | VC++ Directories.  However, that option is gone:</p>
<blockquote><p><img class="size-full wp-image-2092" alt="VS2012_ToolsOptionsDirectories" src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_ToolsOptionsDirectories.png" width="606" height="162" /></p></blockquote>
<p>Instead, the system-wide include paths are now located within the &#8216;Properties&#8217; interface.  To access it, select View | Property Manager.  No dialog will appear yet.  Instead, the Property Manager appears as a tab along with the Solution Explorer:</p>
<blockquote><p><img class="size-full wp-image-2093" alt="VS2012_OptionsPropertyManager" src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_OptionsPropertyManager.png" width="302" height="136" /></p></blockquote>
<p style="padding-left: 30px;"><strong>Note:  The Property Manager won&#8217;t contain anything unless a solution is loaded.</strong></p>
<p>Now, expand one of your projects, then expand Debug | Win32 or Release | Win32:</p>
<blockquote><p><img class="size-full wp-image-2094" alt="VS2012_PropertyPageProjectExpanded" src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_PropertyPageProjectExpanded.png" width="231" height="208" /></p></blockquote>
<p>Right click Microsoft.Cpp.Win32.user and select Properties:</p>
<blockquote><p><img class="size-full wp-image-2095" alt="VS2012_PropertyPageProjectExpandedMenu" src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_PropertyPageProjectExpandedMenu.png" width="531" height="249" /></p></blockquote>
<p>This brings up the Microsoft.Cpp.Win32.User Property Pages dialog, which should look familiar enough:</p>
<blockquote><p><img class="size-full wp-image-2096" alt="VS2012_Win32UserPropertyPage" src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_Win32UserPropertyPage.png" width="681" height="208" /></p></blockquote>
<h3>Alternate Access</h3>
<p>The properties can be accessed directly as an XML file by editing <tt>%LOCALAPPDATA%\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props</tt></p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/12/VS2012_Win32UserPropsXML.png" alt="VS2012_Win32UserPropsXML" width="660" height="134" class="size-full wp-image-2104" /></p></blockquote>
<h3>Rant</h3>
<p>None of this makes any sense whatsoever.  Why do I have to have a solution loaded before I can edit the system-wide (technically user-wide) path settings?  The old system made sense:  project-specific include paths were set in the properties of individual projects, and system include paths were set through the Tools menu.  The layout is irritating, forgettable, and, most importantly, it makes absolutely no sense to access system settings by clicking through your own projects!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2012/12/17/setting-global-c-include-paths-in-visual-studio-2012-and-2011-and-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Do I Know What Ubuntu Version Number I Have?</title>
		<link>http://www.curlybrace.com/words/2012/02/12/how-do-i-know-what-ubuntu-version-number-i-have/</link>
		<comments>http://www.curlybrace.com/words/2012/02/12/how-do-i-know-what-ubuntu-version-number-i-have/#comments</comments>
		<pubDate>Sun, 12 Feb 2012 23:23:43 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=2013</guid>
		<description><![CDATA[lsb_release -a]]></description>
				<content:encoded><![CDATA[<p><tt>lsb_release -a</tt></p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2012/02/12/how-do-i-know-what-ubuntu-version-number-i-have/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Console2 and Cygwin with Solarized Color Palette</title>
		<link>http://www.curlybrace.com/words/2012/02/12/console2-and-cygwin-with-solarized-color-palette/</link>
		<comments>http://www.curlybrace.com/words/2012/02/12/console2-and-cygwin-with-solarized-color-palette/#comments</comments>
		<pubDate>Sun, 12 Feb 2012 23:09:26 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Cygwin]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1990</guid>
		<description><![CDATA[If you want to use Ethan Schoonover&#8217;s Solarized color palette with Console2 and Cygwin, here&#8217;s how: Edit the console settings file at %LOCALAPPDATA%\Console2\console.xml or %APPDATA%\Console\console.xml. Replace the &#60;colors&#62; ... &#60;/colors&#62; section with the following: Restart Console2. Colors in vim look &#8230; <a href="http://www.curlybrace.com/words/2012/02/12/console2-and-cygwin-with-solarized-color-palette/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>If you want to use <a href="http://ethanschoonover.com/solarized">Ethan Schoonover&#8217;s Solarized color palette</a> with <a href="http://sourceforge.net/projects/console/">Console2</a> and <a href="http://www.cygwin.com/">Cygwin</a>, here&#8217;s how:</p>
<ol>
<li />Edit the console settings file at <tt>%LOCALAPPDATA%\Console2\console.xml</tt> or <tt>%APPDATA%\Console\console.xml</tt>.
<li />Replace the <tt>&lt;colors&gt; ... &lt;/colors&gt;</tt> section with the following:
<pre class="brush: xml; title: ; notranslate">&lt;colors&gt;
   &lt;color id=&quot;0&quot; r=&quot;7&quot; g=&quot;54&quot; b=&quot;66&quot;/&gt;         &lt;!-- black --&gt;
   &lt;color id=&quot;1&quot; r=&quot;38&quot; g=&quot;139&quot; b=&quot;210&quot;/&gt;      &lt;!-- blue --&gt;
   &lt;color id=&quot;2&quot; r=&quot;133&quot; g=&quot;153&quot; b=&quot;0&quot;/&gt;       &lt;!-- green --&gt;
   &lt;color id=&quot;3&quot; r=&quot;42&quot; g=&quot;161&quot; b=&quot;152&quot;/&gt;      &lt;!-- cyan --&gt;
   &lt;color id=&quot;4&quot; r=&quot;220&quot; g=&quot;50&quot; b=&quot;47&quot;/&gt;       &lt;!-- red --&gt;
   &lt;color id=&quot;5&quot; r=&quot;211&quot; g=&quot;54&quot; b=&quot;130&quot;/&gt;      &lt;!-- magenta --&gt;
   &lt;color id=&quot;6&quot; r=&quot;181&quot; g=&quot;137&quot; b=&quot;0&quot;/&gt;       &lt;!-- yellow/brown --&gt;
   &lt;color id=&quot;7&quot; r=&quot;238&quot; g=&quot;232&quot; b=&quot;213&quot;/&gt;     &lt;!-- white --&gt;
   &lt;color id=&quot;8&quot; r=&quot;0&quot; g=&quot;43&quot; b=&quot;54&quot;/&gt;         &lt;!-- brblack --&gt; 
   &lt;color id=&quot;9&quot; r=&quot;131&quot; g=&quot;148&quot; b=&quot;150&quot;/&gt;     &lt;!-- brblue --&gt;
   &lt;color id=&quot;10&quot; r=&quot;88&quot; g=&quot;110&quot; b=&quot;117&quot;/&gt;     &lt;!-- brgreen --&gt;
   &lt;color id=&quot;11&quot; r=&quot;147&quot; g=&quot;161&quot; b=&quot;161&quot;/&gt;    &lt;!-- brcyan --&gt;
   &lt;color id=&quot;12&quot; r=&quot;203&quot; g=&quot;75&quot; b=&quot;22&quot;/&gt;      &lt;!-- brred --&gt;
   &lt;color id=&quot;13&quot; r=&quot;108&quot; g=&quot;113&quot; b=&quot;196&quot;/&gt;    &lt;!-- brmagenta/violet --&gt;
   &lt;color id=&quot;14&quot; r=&quot;101&quot; g=&quot;123&quot; b=&quot;131&quot;/&gt;    &lt;!-- bryellow --&gt;
   &lt;color id=&quot;15&quot; r=&quot;253&quot; g=&quot;246&quot; b=&quot;227&quot;/&gt;    &lt;!-- brwhite  --&gt;
&lt;/colors&gt;
</pre>
<li />Restart Console2.
</ol>
<p>Colors in <tt>vim</tt> look good:</p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/02/VIM_CPPColors.png" alt="Editing a CPP file in vim" title="VIM_CPPColors" width="400" height="374" class="size-full wp-image-2007" /></p></blockquote>
<p>Cygwin <tt>ls</tt> colors are a bit odd compared to other platforms:</p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2012/02/DefaultCygwinLSColors.png" alt="Cygwin directory listing" title="DefaultCygwinLSColors" width="342" height="112" class="size-full wp-image-2008" /></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2012/02/12/console2-and-cygwin-with-solarized-color-palette/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Build Microsoft Detours Express (32-bit) on 64-bit Windows</title>
		<link>http://www.curlybrace.com/words/2012/02/09/how-to-build-microsoft-detours-express-32-bit-on-64-bit-windows/</link>
		<comments>http://www.curlybrace.com/words/2012/02/09/how-to-build-microsoft-detours-express-32-bit-on-64-bit-windows/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 08:19:01 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1986</guid>
		<description><![CDATA[Microsoft Detours Express, which is 32-bit only, can still be built on 64-bit operating systems. Here&#8217;s how: Open a 32-bit Command Prompt (C:\Windows\SysWow64\cmd.exe). Run VCVARS32.BAT VS2010: "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat" VS2008: "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" Set &#8230; <a href="http://www.curlybrace.com/words/2012/02/09/how-to-build-microsoft-detours-express-32-bit-on-64-bit-windows/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Microsoft Detours Express, which is 32-bit only, can still be built on 64-bit operating systems.  Here&#8217;s how:</p>
<ol>
<li />Open a 32-bit Command Prompt (<tt>C:\Windows\SysWow64\cmd.exe</tt>).
<li />Run <tt>VCVARS32.BAT</tt>
<ul>
<li />VS2010:  <tt>"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"</tt>
<li />VS2008:  <tt>"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"</tt>
</ul>
<li />Set the target processor to x86 (<tt>set DETOURS_TARGET_PROCESSOR=X86</tt>).
<li />Build Detours using <tt>nmake</tt>.
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2012/02/09/how-to-build-microsoft-detours-express-32-bit-on-64-bit-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What Exactly Are ATL&#8217;s BEGIN_COM_MAP, END_COM_MAP, and COM_INTERFACE_ENTRY Macros?</title>
		<link>http://www.curlybrace.com/words/2011/12/20/what-exactly-are-atls-begin_com_map-end_com_map-and-com_interface_entry/</link>
		<comments>http://www.curlybrace.com/words/2011/12/20/what-exactly-are-atls-begin_com_map-end_com_map-and-com_interface_entry/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 10:20:44 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[COM]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1959</guid>
		<description><![CDATA[There are many places where ATL&#8217;s COM_MAP macros are documented, but I haven&#8217;t seen it plainly stated what they actually mean. Simply put, BEGIN_COM_MAP implements _InternalQueryInterface. COM_INTERFACE_ENTRY indicates that your class supports the specified interface. END_COM_MAP finishes the _InternalQueryInterface implementation. &#8230; <a href="http://www.curlybrace.com/words/2011/12/20/what-exactly-are-atls-begin_com_map-end_com_map-and-com_interface_entry/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>There are many places where ATL&#8217;s COM_MAP macros are documented, but I haven&#8217;t seen it plainly stated what they actually mean.</p>
<p>Simply put, BEGIN_COM_MAP implements _InternalQueryInterface.  COM_INTERFACE_ENTRY indicates that your class supports the specified interface.  END_COM_MAP finishes the _InternalQueryInterface implementation.</p>
<blockquote><p>Note:  A QueryInterface implementation which calls this _InternalQueryInterface method must either be hand-coded, <a href="http://msdn.microsoft.com/en-us/library/c43h4867(v=VS.100).aspx">or supplied by CComObject, CComAggObject, etc</a>.</p></blockquote>
<p>For example:</p>
<blockquote><pre>
class MyClass :
    public CComObjectRoot,
    public ISomeInterface
{
public:
    BEGIN_COM_MAP(MyClass)
        COM_INTERFACE_ENTRY(ISomeInterface)
    END_COM_MAP()
};

CComClass<MyClass> myInstance = new CComClass<MyCLass>;
</pre>
</blockquote>
<p>The COM_INTERFACE_ENTRY line indicates that MyClass implements ISomeInterface.  If QueryInterface is called to requests an ISomeInterface pointer, the call will succeed.  Without the COM_INTERFACE_ENTRY line, the QueryInterface call would fail.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2011/12/20/what-exactly-are-atls-begin_com_map-end_com_map-and-com_interface_entry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skype 5.5 Cannot Display Asian Characters</title>
		<link>http://www.curlybrace.com/words/2011/11/22/skype-5-5-cannot-display-asian-characters/</link>
		<comments>http://www.curlybrace.com/words/2011/11/22/skype-5-5-cannot-display-asian-characters/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 03:34:59 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1937</guid>
		<description><![CDATA[After upgrading to Skype 5.5, I found that Japanese and Chinese characters showed as a series of boxes. I could type or paste them and they would be visible on the other end, but not on my end. Similarly, if &#8230; <a href="http://www.curlybrace.com/words/2011/11/22/skype-5-5-cannot-display-asian-characters/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>After upgrading to Skype 5.5, I found that Japanese and Chinese characters showed as a series of boxes.  I could type or paste them and they would be visible on the other end, but not on my end.  Similarly, if the other person wrote Asian characters, they would not render correctly, like this:</p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/Skype_FontBug.png" alt="" title="Skype_FontBug" width="400" height="380" class="alignleft size-full wp-image-1945" /></p></blockquote>
<p><br clear=all /></p>
<p>A temporary fix is to change the IM font to Arial Unicode MS, which may have to be enabled from the control panel.  Here are the steps:</p>
<ol>
<li />In the Skype menu, select Tools | Options, then click on &#8220;IM &#038; SMS&#8221;, then &#8220;IM appearance&#8221;:<br />
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/Skype_OptionsIMSMS.png" alt="" title="Skype_OptionsIMSMS" width="573" height="490" class="alignleft size-full wp-image-1939" /></p></blockquote>
<p><br clear=all /></p>
<li />Click on &#8220;Change font&#8221; to bring up the font dialog:<br />
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/Skype_OptionsFont.png" alt="" title="Skype_OptionsFont" width="353" height="382" class="alignleft size-full wp-image-1938" /></p></blockquote>
<p><br clear=all /></p>
<li />If &#8220;Arial Unicode MS&#8221; is available, select it, click OK, then Save, and you&#8217;re done.
<p>If &#8220;Arial Unicode MS&#8221; is <b>not</b> available, then click &#8220;Show More Fonts&#8221; to bring up the Control Panel&#8217;s Font selector:</p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/Skype_ControlPanelFonts.png" alt="" title="Skype_ControlPanelFonts" width="554" height="459" class="alignleft size-full wp-image-1940" /></p></blockquote>
<p><br clear=all /></p>
<li />Locate &#8220;Arial Unicode MS&#8221;, click on it to select it, then click on &#8220;Show&#8221; in the toolbar.  Close the Fonts window (click the red X).  You will have to close the Font dialog as well, then reopen it, in order for the Arial Unicode MS font to be displayed.<br />
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/Skype_OptionsFontSet.png" alt="" title="Skype_OptionsFontSet" width="353" height="382" class="alignleft size-full wp-image-1949" /></p></blockquote>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2011/11/22/skype-5-5-cannot-display-asian-characters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Things That Suck:  Ubuntu Unity</title>
		<link>http://www.curlybrace.com/words/2011/11/22/things-that-suck-ubuntu-unity/</link>
		<comments>http://www.curlybrace.com/words/2011/11/22/things-that-suck-ubuntu-unity/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 21:53:13 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1921</guid>
		<description><![CDATA[I just upgraded my virtual machine to Unity. All the negatives I&#8217;d read rang true. The interface really does seem like a poor copy of OS X, for tablets. Complaints are often dismissed with a curt suggestion to switch distributions. &#8230; <a href="http://www.curlybrace.com/words/2011/11/22/things-that-suck-ubuntu-unity/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I just upgraded my virtual machine to Unity.  All the negatives I&#8217;d read rang true.  The interface really does seem like a poor copy of OS X, for tablets.  Complaints are often dismissed with a curt suggestion to switch distributions.  However, there is an inescapable truth:</p>
<blockquote><p><img src="http://www.curlybrace.com/words/wp-content/uploads/2011/11/UbuntuUnitySucks.png" alt="" title="UbuntuUnitySucks" width="561" height="576" /></p></blockquote>
<p><br style="clear:both;" /><br />
If the #2 Google suggestion is &#8220;<i>your product</i> sucks&#8221;, you can take it as strong evidence that you&#8217;ve made a poor product development decision.</p>
<p>Personally, I&#8217;m rolling my virtual machine back to a prior snapshot.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2011/11/22/things-that-suck-ubuntu-unity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virgin Mobile USA &#8211; No Data Connection (3G)</title>
		<link>http://www.curlybrace.com/words/2011/09/13/virgin-mobile-usa-no-data-connection/</link>
		<comments>http://www.curlybrace.com/words/2011/09/13/virgin-mobile-usa-no-data-connection/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 03:28:14 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1881</guid>
		<description><![CDATA[If you&#8217;ve been battling Virgin Mobile USA&#8217;s technical support drones and have been unable to get 3G data access, check that 3G data is enabled on your phone. From the main screen: Press the menu button Select Settings Select Wireless &#8230; <a href="http://www.curlybrace.com/words/2011/09/13/virgin-mobile-usa-no-data-connection/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>If you&#8217;ve been battling Virgin Mobile USA&#8217;s technical support drones and have been unable to get 3G data access, check that 3G data is enabled on your phone.</p>
<p>From the main screen:</p>
<ul>
<li />Press the menu button
<li />Select Settings
<li />Select Wireless &#038; Networks
<li />Scroll to the bottom of the menu and select Mobile Networks
<li />Make sure &#8220;Data Enabled&#8221; has a green check mark next to it
</ul>
<p>Virgin Mobile USA (i.e. Sprint) was unable to solve this after three phone calls over the course of a day.  Their technical support script jumps straight into cellular network settings and battery removal.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2011/09/13/virgin-mobile-usa-no-data-connection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Activating a Virgin Mobile Phone in a Different Area Code &#8211; Vanilla Visa Payment Problems</title>
		<link>http://www.curlybrace.com/words/2011/09/13/activating-a-virgin-mobile-phone-in-a-different-area-code-vanilla-visa-payment-problems/</link>
		<comments>http://www.curlybrace.com/words/2011/09/13/activating-a-virgin-mobile-phone-in-a-different-area-code-vanilla-visa-payment-problems/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 03:13:24 +0000</pubDate>
		<dc:creator>Jeff Fitzsimons</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.curlybrace.com/words/?p=1882</guid>
		<description><![CDATA[As an experiment in semi-anonymity, I thought I would see if I could activate my Virgin Mobile Optimus V in a more desirable area code than my own. After a bit of research, I decided to buy a $50 Vanilla &#8230; <a href="http://www.curlybrace.com/words/2011/09/13/activating-a-virgin-mobile-phone-in-a-different-area-code-vanilla-visa-payment-problems/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>As an experiment in semi-anonymity, I thought I would see if I could activate my Virgin Mobile Optimus V in a more desirable area code than my own.  After a bit of research, I decided to buy a $50 Vanilla Visa prepaid debit card from Walgreens.  They claim the card can be used for online purchases, but you&#8217;ll need to register the card and provide a zip code for verification.  You can enter any zip code you like, and no personal information is required.</p>
<p>I was able to successfully create an account with Virgin Mobile in the desired area code.  However, the payment was rejected.  One possible reason is that  Virgin Mobile may not be able to process a credit card with an expiration date so far in the future.  The initial payment form used a text field for expiration year, so I could enter anything I wanted.  When I revised my payment method, the web form only allowed selection up to, I believe, 2016.  After I changed my payment method to a different, real credit card, the account was activated (though I still had problems with the phone being activated on the network).</p>
<p>So, first off, I&#8217;m pretty sure you could get the Virgin Mobile phone number in any area code you want, anyway, because the first step in their registration process asks your zip code.  Billing is done at a later point in the process, with its own zip code field.  Second, Vanilla Visa cards claim they can be used online, but since they have expiration dates far in the future, the website you want to buy from may not be set up to process them correctly.  Basically, the entire process was interesting, but a waste of time.</p>
<p>At some point, it might be fun to try again using a pseudonym.  When the online payment fails, one could call and attempt to resolve the payment over the phone.  The effort involved would quickly exceed my interest in anonymity, but it might be a fun exercise.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.curlybrace.com/words/2011/09/13/activating-a-virgin-mobile-phone-in-a-different-area-code-vanilla-visa-payment-problems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
