<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns="http://purl.org/rss/1.0/"
 xmlns:content="http://purl.org/rss/1.0/modules/content/"
 xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:syn="http://purl.org/rss/1.0/modules/syndication/"
 xmlns:admin="http://webns.net/mvcb/"
 xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel rdf:about="http://blog.livedoor.jp/blackwingcat/">
<title>黒翼猫のコンピュータ日記 2nd Edition</title>
<link>http://blog.livedoor.jp/blackwingcat/</link>
<description>3rdに引っ越しました。
2010/12/31 以前＆2023/1/1 以降の記事を開くと５秒後にリダイレクトされます。
普段の日記は あっち[http://thyrving.livedoor.biz/] こちらには技術関係のちょっとマニアックな記事やニュースを載せます。
Windows2000ネタ中心に毎日更新。
</description>
<dc:language>ja</dc:language>
<admin:generatorAgent rdf:resource="http://blog.livedoor.com/?v=2.0" />
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
<items>
 <rdf:Seq>
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032585.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032653.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032549.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032519.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032495.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032482.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032480.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032470.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032428.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032424.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032338.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032318.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032295.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032288.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032273.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032272.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032269.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032150.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032140.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032136.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032074.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032050.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032043.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032029.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032076.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031949.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031947.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031926.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031886.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031884.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031805.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031800.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031766.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031745.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031714.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031698.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031689.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031687.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031656.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2032058.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031614.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031590.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031559.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031533.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031494.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031430.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031386.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031367.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031360.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/blackwingcat/archives/2031314.html" />
 </rdf:Seq>
</items>
</channel>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032585.html">
<title>*【脱韓流】ライブドアブログは Bing からのクロールを２年以上ブロックし続けているのでアクセスが伸びないらしい</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032585.html</link>
<description>引っ越しました５秒後にリダイレクトされます一年後にこのページは削除されます※リダイレクトされない場合はブラウザのキャッシュをクリアして下さい</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-07-02T12:00:58+09:00</dc:date>
<dc:subject>Blog</dc:subject>
<content:encoded><![CDATA[<div>引っ越しました</div><div>５秒後にリダイレクトされます</div><div>一年後にこのページは削除されます<br />※リダイレクトされない場合はブラウザのキャッシュをクリアして下さい<br /></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032653.html">
<title>７月からBlog引っ越します</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032653.html</link>
<description>Blog 引っ越し予定地</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-07-02T12:00:42+09:00</dc:date>
<dc:subject>Blog</dc:subject>
<content:encoded><![CDATA[<a  href="http://win2k.org/blog/" target="_blank" title="">Blog 引っ越し予定地</a><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032549.html">
<title>*【偽科学】日焼け止めを30分前と言っているソースを調べたらとんでもない理由が判明</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032549.html</link>
<description>引っ越しました５秒後にリダイレクトされます一年後にこのページは削除されます※リダイレクトされない場合はブラウザのキャッシュをクリアして下さい</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-07-01T12:00:59+09:00</dc:date>
<dc:subject>ニセ科学・科学</dc:subject>
<content:encoded><![CDATA[<div>引っ越しました</div><div>５秒後にリダイレクトされます</div><div>一年後にこのページは削除されます<br />※リダイレクトされない場合はブラウザのキャッシュをクリアして下さい<br /></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032519.html">
<title>もふぶら v1.1.2に更新</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032519.html</link>
<description>Visual Studio 2005 の MFC で Win95対応ブラウザを作ってみる実験変更点v1.1.2 キーボードアクセラレータの不具合修正          レンダリングモードの変更が不完全な不具合修正          レンダリングモードにIE10,11追加ほとんどが、ネタブラウザ だるぶらで修正...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-30T12:00:46+09:00</dc:date>
<dc:subject>自作ソフト</dc:subject>
<content:encoded><![CDATA[<a  target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/1772358.html">Visual Studio 2005 の MFC で Win95対応ブラウザを作ってみる実験<br /></a><br />変更点<br /><div>v1.1.2 キーボードアクセラレータの不具合修正</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; レンダリングモードの変更が不完全な不具合修正</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; レンダリングモードにIE10,11追加<br /><br /></div><div>ほとんどが、ネタブラウザ だるぶらで修正したやつですが･ω･<br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/1917374.html">全米が震撼！こんな使えないブラウザ初めて見た【だるやなぎブラウザー】</a><br /><br /><br /></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032495.html">
<title>WIC Viewer 2 に補完アルゴリズムの変更機能を追加</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032495.html</link>
<description>【BM】Windows 2000+拡張カーネルで動くWIC Viewer 2【保存機能付き】拡大時の補完アルゴリズムを変更する機能を追加しましたというのも、ドット絵を表示したときに、ギザギザにならないのが場合によっては不便だったからです。近隣補完バイリニア補完Cubic補完全過重補完高...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-29T12:00:58+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<a  href="http://blog.livedoor.jp/blackwingcat/archives/1908257.html" target="_blank" title="">【BM】Windows 2000+拡張カーネルで動くWIC Viewer 2【保存機能付き】</a><br /><br />拡大時の補完アルゴリズムを変更する機能を追加しました<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/d/8df23f87.png" width="383" height="422" border="0" alt="wc6" hspace="5" class="pict"><br />というのも、ドット絵を表示したときに、ギザギザにならないのが場合によっては不便だったからです。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/3/53d52479.png" width="350" height="407" border="0" alt="wc1" hspace="5" class="pict"><br />近隣補完<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/9/79ba649e.png" width="350" height="407" border="0" alt="wc2" hspace="5" class="pict"><br />バイリニア補完<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/0/4000e4d1.png" width="350" height="407" border="0" alt="wc3" hspace="5" class="pict"><br />Cubic補完<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/6/469d2ee1.png" width="350" height="407" border="0" alt="wc4" hspace="5" class="pict"><br />全過重補完<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/2/0/20d426c8.png" width="350" height="407" border="0" alt="wc5" hspace="5" class="pict"><br />高品質キュービック補完<br />（多分Win10以降）
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032482.html">
<title>【Win95対応】非SSE2対応版 GDI+ の最終バージョン リリース</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032482.html</link>
<description>非SSE2 OS対応の GDI+の最終バージョンを調べてみてKB4039384で以下のバージョンのファイルを抽出しました1. 6.0.6002.24183 GDIPLUS API v1.12. 5.2.6002.24183 GDIPLUS API v1.0 (非SSE2対応+SSE2対応版)3. 5.2.6002.24180 GDIPLUS API v1.0 (非SSE2対応)3を Windows 95用...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-28T12:00:35+09:00</dc:date>
<dc:subject>WindowsUpdate/WLU</dc:subject>
<content:encoded><![CDATA[非SSE2 OS対応の GDI+の最終バージョンを調べてみて<br /><span  style="color: rgb(30, 30, 30); font-family: &quot;Segoe UI&quot;, &quot;Segoe UI Web&quot;, wf_segoe-ui_normal, &quot;Helvetica Neue&quot;, &quot;BBAlpha Sans&quot;, &quot;S60 Sans&quot;, Arial, sans-serif; font-size: 16px; background-color: rgb(244, 244, 244);">KB4039384で以下のバージョンのファイルを抽出しました</span><br /><br />1. 6.0.6002.24183 GDIPLUS API v1.1<br />2. 5.2.6002.24183&nbsp;GDIPLUS API v1.0 (非SSE2対応+SSE2対応版)<br />3. 5.2.6002.24180 GDIPLUS API v1.0 (非SSE2対応)<br /><br />3を Windows 95用に改造<br />2を Windows 98/Me様に同梱<br />1と2を XP/2000用にパッケージしました ･ω･<br /><br />ちなみに現行の拡張カーネルにはこれより新しいものが入ってるので適用は不要です。<br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032480.html">
<title>.Net Framework と TLS Supportについて</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032480.html</link>
<description>TLS 1.2 Support for .Net Framework 4.0(KB4483475) の位置づけについて解説です。拡張カーネル v3.1には TLSサポートが既に入っています。また、Microsoft .Net Framework 4.0.3 Roll update(v2a)には、.Net Framework のTLSサポートパッチが既に当たっています。なので、...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-27T12:00:35+09:00</dc:date>
<dc:subject>Win2000拡張カーネル</dc:subject>
<content:encoded><![CDATA[TLS 1.2 Support for .Net Framework 4.0(KB4483475) の位置づけについて解説です。<br /><br />拡張カーネル v3.1には TLSサポートが既に入っています。<br />また、Microsoft .Net Framework 4.0.3 Roll update(v2a)には、.Net Framework のTLSサポートパッチが既に当たっています。<br /><br />なので、拡張カーネルの最新版の環境に、Microsoft .Net Framework 4.0 for Extended Kernel(v2)とRoll update(v2a)が入っていれば TLS 1.2Supportが不要となっています。<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032470.html">
<title>Windows 95でKB4490385 が動くか実験</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032470.html</link>
<description>Windows Embedded POSReady 2009 の情報漏えいの脆弱性を解決するためのセキュリティ更新プログラムについて2019 年 3 月 13 日 - Microsoft サポートgdiplus.dll 5.2.6002.24563ですが、SSE2命令が含まれてるとされてるんですが、Windows 95で動くか実験してみましたgdipSse...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-26T12:00:44+09:00</dc:date>
<dc:subject>Windows9x/Me</dc:subject>
<content:encoded><![CDATA[<div><a  title="" target="_blank" href="https://support.microsoft.com/ja-jp/topic/windows-embedded-posready-2009-%E3%81%AE%E6%83%85%E5%A0%B1%E6%BC%8F%E3%81%88%E3%81%84%E3%81%AE%E8%84%86%E5%BC%B1%E6%80%A7%E3%82%92%E8%A7%A3%E6%B1%BA%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E6%9B%B4%E6%96%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A62019-%E5%B9%B4-3-%E6%9C%88-13-%E6%97%A5-cc8ed4c3-a67c-182f-45b3-a9b9a31ac56e">Windows Embedded POSReady 2009 の情報漏えいの脆弱性を解決するためのセキュリティ更新プログラムについて2019 年 3 月 13 日 - Microsoft サポート<br /></a><br />gdiplus.dll 5.2.6002.24563ですが、SSE2命令が含まれてるとされてるんですが、Windows 95で動くか実験してみました<br /><a  title="" target="_blank" href="http://win2k.org/cgi-bin/dl.cgi?file=gdipSse2Test.cab">gdipSse2Test.cab</a><br /></div><div><br /><img  class="pict" hspace="5" alt="gdip" border="0" height="348" width="402" src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/d/4db267fb.png"><br />結論としては、PNGを表示する程度の処理であればSSE2の処理にぶち当たらないのか動作しました<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>L4AF27A9B: call<span  style="white-space:pre">	</span>SUB_L4AF27AAD<br />　mov<span  style="white-space:pre">	</span>[L4B0981A8],eax<br />　xor<span  style="white-space:pre">	</span>eax,eax<br />　retn</td></tr></tbody></table>ちなみに、この辺りの処理はSSE2対応CPUかチェックしてフラグを立てる処理なので・・・CPUの性能確認してからSSE2の処理に飛ぶような個所もあるんですが、不完全みたいなんですよね ･ω･<br /><br /><br /></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032428.html">
<title>Windows XP のcomdlg32.dll を Windows 2000で使うと</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032428.html</link>
<description>試してみた。ダイアログを開いたときクラッシュするのでトレースしてみたところuser32.dll の NtSetHighWaitLowThreadで int 2bhがコールされた後変なアドレスに戻ってきてクラッシュする。多分APIの仕様が一部違うのだと思われ ・ω・</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-25T12:00:41+09:00</dc:date>
<dc:subject>Win2000拡張カーネル</dc:subject>
<content:encoded><![CDATA[試してみた。<br /><br />ダイアログを開いたときクラッシュするのでトレースしてみたところ<br />user32.dll の NtSetHighWaitLowThreadで int 2bhがコールされた後<br />変なアドレスに戻ってきてクラッシュする。<br /><br />多分APIの仕様が一部違うのだと思われ ・ω・<br /><br /><div  style="position: absolute; left: -81px; top: -20.3333px;" id="gtx-trans"><div  class="gtx-trans-icon"></div></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032424.html">
<title>KOKUYO の SOFTMEMORIBO の文字化け調査3</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032424.html</link>
<description>KOKUYO の SOFTMEMORIBO の文字化け調査1KOKUYO の SOFTMEMORIBO の文字化け調査2
ものすごく前の記事の調査なのですが進展がありました。文字化けしてるこのコンテンツリソースハッカーで見ると…。この、0F026C11-5A66-4C2B-87B5-88DDEBAE72A1なのですが、Vsflex8L.ocxとい...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-24T12:00:36+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/1621566.html">KOKUYO の SOFTMEMORIBO の文字化け調査1</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/1621933.html" target="_blank">KOKUYO の SOFTMEMORIBO の文字化け調査2</a><br />
ものすごく前の記事の調査なのですが進展がありました。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/9/0/900ec7eb.png" width="408" height="306" border="0" alt="sm1" hspace="5" class="pict"><br />文字化けしてるこのコンテンツ<br />リソースハッカーで見ると…。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/f/f/ff9f2353.png" width="408" height="407" border="0" alt="sm2" hspace="5" class="pict"><br /><br />この、0F026C11-5A66-4C2B-87B5-88DDEBAE72A1なのですが、<br /><a  href="https://dev.grapecity.co.jp/support/kb/detail.asp?id=12740" target="_blank" title="">Vsflex8L.ocx</a>というACTIVE-Xコンポーネントです<br /><br />このコンポーネントが、<br />HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\LanguagePack<br />に設定値があると、MS UI Gothicではなく、Microsoft Sans Serif で描画を試みるから<br />と言うのが直接の原因でした･ω･<br /><br />うーむ謎い
<a href="http://blog.livedoor.jp/blackwingcat/archives/2032424.html">続きを読む</a>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032338.html">
<title>Auslogics Disk Defrag 11 体験版 をWindows 2000で起動してみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032338.html</link>
<description>窓の杜が、リスクウェアを紹介してサイトがブロックされたのを『誤判定』とノートンに責任転嫁するAuslogics Disk Defrag Ultimate 体験版を使ってみたところ色々突っ込みどころがある件体験版ソフトに OpenCandy というマルウェアを突っ込んでいたせいでよくアンチウイルス...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-23T12:00:26+09:00</dc:date>
<dc:subject>Win2000拡張カーネル</dc:subject>
<content:encoded><![CDATA[<a  href="http://blog.livedoor.jp/blackwingcat/archives/1953191.html" target="_blank" title="">窓の杜が、リスクウェアを紹介してサイトがブロックされたのを『誤判定』とノートンに責任転嫁する</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/1992951.html" target="_blank" title="">Auslogics Disk Defrag Ultimate 体験版を使ってみたところ色々突っ込みどころがある件</a><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/e/1/e155a33b.png" width="408" height="210" border="0" alt="aud2" hspace="5" class="pict"><br /><br />体験版ソフトに OpenCandy というマルウェアを突っ込んでいたせいでよくアンチウイルスソフトに引っ掛かってた件ですが。現在ではただのアドウェア（広告ソフト）になってるので、あんまり心配いらないかもしれません。ただ、やっぱ体験版は信頼できないので、気に入ったら製品版買いましょう。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/a/d/ad4233fb.png" width="408" height="194" border="0" alt="aud3" hspace="5" class="pict"><br /><br />最新版の Auslogics Disk Defrag ですが・・・Windows XPモードにすると普通にインストールできるのですが、 Vista の関数バリバリ使ってるので、普通には起動できませんね。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/1/71786e60.png" width="408" height="276" border="0" alt="aud" hspace="5" class="pict"><br /><br />無理やり関数潰して起動してみました<br />ボタン等が一部表示されないですが、一応動きました。<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032318.html">
<title>Windows 10/11にあるという緊急の再起動をWindows 2000でやってみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032318.html</link>
<description>How to access the hidden Emergency Restart option in Microsoft WindowsWindowsには『緊急の再起動』オプションがある。問答無用で再起動する最終手段 | ニッチなPCゲーマーの環境構築ZWindows 10/11にあるという緊急の再起動をWindows 2000でやってみたところこんな画面...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-22T12:00:31+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<a  href="https://betanews.com/2023/06/15/how-to-access-the-hidden-emergency-restart-option-in-microsoft-windows/" target="_blank" title="">How to access the hidden Emergency Restart option in Microsoft Windows</a><br /><a  href="https://www.nichepcgamer.com/archives/windows-emerygency-restart-option.html" target="_blank" title="">Windowsには『緊急の再起動』オプションがある。問答無用で再起動する最終手段 | ニッチなPCゲーマーの環境構築Z<br /></a>Windows 10/11にあるという緊急の再起動をWindows 2000でやってみたところ<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/c/a/cae7b19d.png" width="408" height="330" border="0" alt="w2ks" hspace="5" class="pict"><br />こんな画面が出てきました ((((･ω･))))
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032295.html">
<title>ibis ペイントで小さいPNGの背景を透明なまま保存する方法</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032295.html</link>
<description>ibis よくある質問 - 質問と回答[iPhone, iPadで透過PNG保存できない]なんか画像アプリを使ってて、背景を透明にできなくて悩んだのだけど。どうも、写真ロールやフォトに保存すると小さいサイズのPNGの背景は強制的に不透明になるらしい。そこで、透明なまま保存する方法マ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-21T12:00:40+09:00</dc:date>
<dc:subject>iOS</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://ssl.ibis.ne.jp/faq/11/ibisPaintforiPad/5/12/?lang=ja">ibis よくある質問 - 質問と回答[iPhone, iPadで透過PNG保存できない]</a><br />なんか画像アプリを使ってて、背景を透明にできなくて悩んだのだけど。<br /><br /><img  class="pict" hspace="5" alt="IMG_4999" border="0" height="167" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/0/00cfab87.jpg"><br />どうも、写真ロールやフォトに保存すると小さいサイズのPNGの背景は強制的に不透明になるらしい。<br /><br />そこで、透明なまま保存する方法<br /><br /><img  class="pict" hspace="5" alt="IMG_4995" border="0" height="797" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/4/8498af87.jpg"><br />マイギャラリーで共有＞透過PNGを選ぶ<br /><br /><img  class="pict" hspace="5" alt="IMG_4997" border="0" height="677" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/2/722741eb.jpg"><br />共有先は、ファイル<br /><br /><br /><img  class="pict" hspace="5" alt="IMG_4998" border="0" height="478" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/6/761bd6e9.jpg"><br />保存フォルダはどこでもよいけど、とりあえずダウンロードが汎用性高い。<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032288.html">
<title>LdrResSearchResource を解析してみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032288.html</link>
<description>Windows Vista 以降の ntdll にある関数LdrResSearchResource を解析してみました関数の仕様NTSTATUS LdrResSearchResource(HINSANCE hDllBase, DWORD sizeTYPE, DWORD []Resource_TYPE, DWORD unknown, DWORD *resAdr, DWORD *resSize, wchar_t *resFolder, DWORD *resFolSi...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-20T12:00:01+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[Windows Vista 以降の ntdll にある関数LdrResSearchResource を解析してみました<br /><br />関数の仕様<br />NTSTATUS LdrResSearchResource(HINSANCE hDllBase, DWORD sizeTYPE, DWORD []Resource_TYPE, DWORD unknown, DWORD *resAdr, DWORD *resSize, wchar_t *resFolder, DWORD *resFolSize);<br /><br />hDllBase 対象のファイルのbaseアドレス<br /><br />sizeTYPE<br />後述のリソースタイプの配列の大きさ<br /><br />Resource_TYPE<br />スキャンするリソースのタイプを配列で格納<br />大概、{RT_MANIFEST, CREATEPROCESS_MANIFEST_RESOURCE_ID, 0}が格納されてる<br /><br />unknown<br />0だったり、0x1100だったり 0x1108が格納されてる<br /><span  style="box-sizing: inherit; outline-color: inherit; font-weight: 600; color: rgb(22, 22, 22); font-family: &quot;Segoe UI&quot;, SegoeUI, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px;">FILE_VER_GET_LOCALISED の場合は 0x1108だった</span><br /><br />resAdr<br />ロードしたリソースの格納アドレス<br /><br />resFolder<br />リソースの言語ローケルで格納すべき MUIフォルダ。<br />そこにリソースがあるとは限らない。NULLでもOK<br /><br />resFolSize<br />リソースフォルダを格納するのに必要なwchar_t のサイズ。NULLでもOK<br /><br />返り値<br />0 成功<br /><div>0xC0000005 STATUS_ACCESS_VIOLATION 用意した返り値のアドレスが不正</div><div>0xC0000023 STATUS_BUFFER_TOO_SMALL バッファーが小さすぎ</div><div>0xC0000089 STATUS_RESOURCE_DATA_NOT_FOUND リソースが見つからない</div><div>0xC000008A STATUS_RESOURCE_TYPE_NOT_FOUND リソースタイプが見つからない</div><div>0xC000008B STATUS_RESOURCE_NAME_NOT_FOUND リソース名が見つからない</div><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032273.html">
<title>Yahoo プレミアム ID に久しぶりにログインしようとしたら、誕生日が分からなくて使えない上、パスワード再発行フォームが不条理だった話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032273.html</link>
<description>25年間使ってたYahoo!Japan IDが急にブロックされました。誕生日を入力しろと言うけど、Yahoo profile と言うサービスで、公開状態になってるのがいやだったから、正しい誕生日いれてないんだよ。旧公開プロフィール サービス終了のお知らせ言っておくが、１０年前までは公開...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-19T12:00:58+09:00</dc:date>
<dc:subject>Networkサービス</dc:subject>
<content:encoded><![CDATA[<img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/b/0b8d8c7d.png" width="408" height="370" border="0" alt="yf1" hspace="5" class="pict"><br />25年間使ってたYahoo!Japan IDが急にブロックされました。<br />誕生日を入力しろと言うけど、Yahoo profile と言うサービスで、公開状態になってるのがいやだったから、正しい誕生日いれてないんだよ。<br /><br /><a  href="https://web.archive.org/web/20130701082120/http://old.profiles.yahoo.co.jp/" target="_blank" title="">旧公開プロフィール サービス終了のお知らせ</a><br />言っておくが、１０年前までは公開情報だったので、認証にされても意味がないのだ。<br /><br />でも、大丈夫、メールと連携してある ・ω・<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/9/2/92717620.png" width="408" height="587" border="0" alt="yf2" hspace="5" class="pict"><br />これで、メールアドレスにリセットしたパスワードを送ってくれるはず…<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/9/2/92717620.png" width="408" height="587" border="0" alt="yf2" hspace="5" class="pict"><br />！？画像認証とメール認証した上確認コードと生年月日と郵便番号！<br />４要素認証に増えとるやないかーい！<br /><br />流石、Yahoo! Softbank 頭おかしい<br /><br />お金払ってまでこんなサービスに入ってる意味はないので、Yahoo プレミアムのクレジットカード課金を止めてもらう事にしました。これで安心 ･ω･<br /><br />ちなみに、住民票等をスクショして送れば３～７日で復旧してくれるという話もある。<br /><a  href="https://inquiry.ms.yahoo.co.jp/correct-information/top" target="_blank" title="">Yahoo! JAPAN ID 登録情報の修正申請</a><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032272.html">
<title>仮想環境のWindows 2000が起動しなくなった時に手っ取り早く復旧する方法</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032272.html</link>
<description>Windows 2000に間違ったドライバを入れた。レジストリハイブがパンクした。拡張カーネルのモジュール作成でミスったなどで、起動しなくなることが結構あります。そんな時どうやって復旧してるかと言う話です。少し前までは、 vmware-mount でディスクイメージをマウントして...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-18T12:00:24+09:00</dc:date>
<dc:subject>Windows2000</dc:subject>
<content:encoded><![CDATA[Windows 2000に間違ったドライバを入れた。<br />レジストリハイブがパンクした。<br />拡張カーネルのモジュール作成でミスった<br /><br />などで、起動しなくなることが結構あります。<br />そんな時どうやって復旧してるかと言う話です。<br /><br />少し前までは、 vmware-mount でディスクイメージをマウントして復旧してたんですが、x64 のＯＳになってから相性が悪い上、Windows の権限の問題も絡んできてめんどくさいので、やり方を変えています<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/9/894370e1.png" width="396" height="232" border="0" alt="rb2" hspace="5" class="pict"><br />とりあえず起動時にESCを押します。<br />押す時間がない場合は vmx に<br />bios.BootDelay = "20000"<br />とか入れます。（２０秒待ち）<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/9/0/904777f1.png" width="408" height="301" border="0" alt="rb3" hspace="5" class="pict"><br />とりあえず、汎用性の高い Windows 8.1のDVDを使って起動してます。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/f/9/f93fb741.png" width="408" height="301" border="0" alt="rb4" hspace="5" class="pict"><br />コンピューターを修復を選びます。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/9/3/936b6629.png" width="402" height="344" border="0" alt="rb5" hspace="5" class="pict"><br />トラブルシューティング<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/6/a/6aaafd3e.png" width="408" height="253" border="0" alt="rb7" hspace="5" class="pict"><br />コマンドプロンプト<br /><br /><br />WinImageで転送したいファイルを flpイメージにしてマウントします。<br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/2/2/22a002c1.png" width="408" height="233" border="0" alt="rb8" hspace="5" class="pict"><br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/d/0d7a8a19.png" width="408" height="230" border="0" alt="rb1" hspace="5" class="pict"><br />コピーしたら終わり。<br />再起動します。<br /><br />レジストリの場合は、FLPではなく、HDD内の正常イメージからコピーですね
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032269.html">
<title>Amazon AWSさん、Google 翻訳のループバグと思われる症状が現れる</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032269.html</link>
<description>Amazon S3 ストリームラッパーッパーッパーッパーッパーッパーッパーッパーッパーッパーッパーッパー AWS SDK for PHP - AWS SDK for PHPAmzon AWSの技術解説ページ、おそらくGoogleの機械語翻訳を使ってるんでしょうがバグっています。繰り返し処理が発生するのは、複数バイ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-17T12:00:30+09:00</dc:date>
<dc:subject>Networkサービス</dc:subject>
<content:encoded><![CDATA[<a  href="https://docs.aws.amazon.com/ja_jp/sdk-for-php/v3/developer-guide/s3-stream-wrapper.html" target="_blank" title="">Amazon S3 ストリームラッパーッパーッパーッパーッパーッパーッパーッパーッパーッパーッパーッパー AWS SDK for PHP - AWS SDK for PHP</a><br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/b/9/b9b09ab0.png" width="408" height="374" border="0" alt="aws" hspace="5" class="pict"><br />Amzon AWSの技術解説ページ、おそらくGoogleの機械語翻訳を使ってるんでしょうがバグっています。<br /><br />繰り返し処理が発生するのは、複数バイト処理の単語の処理がちゃんとできてないからなので、<a  href="https://amzn.to/44bK6ar" target="_blank" title="">いろんな場所の翻訳</a>で見かけます。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/6/762d5f23.png" width="408" height="287" border="0" alt="aws2" hspace="5" class="pict"><br /><br />翻訳に限った話ではなく、<a  href="https://www.maeda.co.jp/works/vivova/vol115/pageindices/index14.html#page=15" target="_blank" title="">PDFのテキスト化</a>などでもよく見かける現象ですね<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/e/e/eeb1cdce.png" width="408" height="585" border="0" alt="aws3" hspace="5" class="pict"><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032150.html">
<title>サクラ大戦をWindows 10(x64)で起動してみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032150.html</link>
<description>SecDrv サービスを、次のエラーが原因で開始できませんでした: このドライバーの読み込みはブロックされていますサクラ大戦、起動しようとしても応答がないのだが。イベントビューアを見ると、secdrvのドライバの起動がブロックされたと表示されているのが分かるWindows 10と...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-16T13:00:59+09:00</dc:date>
<dc:subject>Windows 10</dc:subject>
<content:encoded><![CDATA[<table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>SecDrv サービスを、次のエラーが原因で開始できませんでした: このドライバーの読み込みはブロックされています</td></tr></tbody></table><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/1/b/1bcc251b.png" width="408" height="304" border="0" alt="sakura3" hspace="5" class="pict"><br />サクラ大戦、起動しようとしても応答がないのだが。イベントビューアを見ると、secdrvのドライバの起動がブロックされたと表示されているのが分かる<br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/1912949.html">Windows 10と MS15-097</a><br />4.3.86.0 2006/9/13版(Win8.1 or KB944653)<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td  style="background-color: rgb(0, 0, 0);color: rgb(255, 255, 255);">C:\Users\Mofmof&gt;sc start secdrv<br /> [SC] StartService FAILED 577: このファイルのデジタル署名を確認できませんでした。最近のハードウェアやソフトウェアの変更により、不正確に署名されたファイルか壊れたファイルがインストールされたか、または不明なところから悪意のあるソフトウェアがインストールされた可能性があります。</td></tr></tbody></table>署名がないのでこうなる<br /><br /><br /><a  href="https://learn.microsoft.com/ja-jp/security-updates/securitybulletins/2007/ms07-067?redirectedfrom=MSDN" target="_blank" title="">マイクロソフト セキュリティ情報 MS07-067 - 緊急 | Microsoft Learn</a><br />入手するなら Windows Server 2003 x64版のKB944653辺りが簡単だと思う･ω･<br /><br />とりあえず、セキュアブートを無効にして、TESTモードにして起動する。<br />なお、BitLockerがインストールされてる環境でセキュアブートを無効にすると起動できなくなるので、BitLockerは解除しておくこと。<br />あと、BitLockerの暗号解除の途中で起動するとやっぱり起動できなくなるので回復キーはちゃんと保存しておきましょう。<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>@echo off <br />set username=Pink Flying Whale<br /> set fn=PFW <br />makecert -r -pe -ss my -n "CN=%username%" %fn%.cer <br />certmgr.exe -add %fn%.cer -s -r localMachine root <br />certmgr.exe -add %fn%.cer -s -r localMachine trustedpublisher<br /> signtool sign -v -s my -n %username% secdrv.sys</td></tr></tbody></table>とりあえず電子署名は簡単に作れる（Windows SDKをインストールすれば）<br /><br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td  style="background-color: rgb(0, 0, 0);color: rgb(255, 255, 255);">C:\Users\Mofmof&gt;sc start secdrv <br />SERVICE_NAME: secdrv<br /> TYPE&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;: 1&nbsp; <br />KERNEL_DRIVER STATE&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : 4<br />&nbsp; RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)<br /> WIN32_EXIT_CODE&nbsp; &nbsp; : 0&nbsp; (0x0) <br />SERVICE_EXIT_CODE&nbsp; : 0&nbsp; (0x0)<br /> CHECKPOINT&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;: 0x0 <br />WAIT_HINT&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : 0x0 <br />PID&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : 0<br /> FLAGS&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :</td></tr></tbody></table>とりあえずドライバ起動<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/1/018eaa58.png" width="413" height="149" border="0" alt="sakura0" hspace="5" class="pict"><br />OK、後はDVD入れれば起動しそう。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/1/0/10b92314.png" width="408" height="306" border="0" alt="sakura1" hspace="5" class="pict"><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/e/6/e6c9078a.png" width="408" height="306" border="0" alt="sakura2" hspace="5" class="pict"><br />動きました<br /><br />Windows 10(x86)ならここまで苦労しなかったんですけどね･ω･<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032140.html">
<title>ゲーム目的で Windows XP の仮想化を Hyper-Vでやってはいけない話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032140.html</link>
<description>なんか、SNSでXPのゲーム環境を用意するために実機が必要だって言ってる人が居て、仮想環境をすすめたら、仮想環境なんて使い物にならない。って言ってる人がいて、よくよく聞いてみたら、Hyper-Vしか使ったことがないというオチだったのですが、大事なことなのでもう一度記...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-15T12:00:22+09:00</dc:date>
<dc:subject>仮想OS/BootCamp</dc:subject>
<content:encoded><![CDATA[<img  class="pict" hspace="5" alt="kaso" border="0" height="157" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/e/4ee29ed1.png"><br />なんか、<a  title="" target="_blank" href="https://misskey.io/notes/9fkq4kypu6">SNS</a>でXPのゲーム環境を用意するために実機が必要だって言ってる人が居て、仮想環境をすすめたら、仮想環境なんて使い物にならない。って言ってる人がいて、よくよく聞いてみたら、Hyper-Vしか使ったことがないというオチだったのですが、大事なことなのでもう一度記事にします。<br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/1902068.html">最近の仮想技術ってどこまでOpenGL 対応してるの？</a><br /><br />Hyper-V といえば、前身は Virtual PCなのですが、グラフィック性能は、はっきり言って、ゴミで、20年間ほとんど進化してないのです。<br /><br /><img  class="pict" hspace="5" alt="kaso2" border="0" height="241" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/2/3/238c2d50.png"><br />まず、DirectXをインストールしても、シェーダー使えません。<br />Direct3D使えません。<br />DirectDraw もアクセラレータは使えません。<br /><br /><img  class="pict" hspace="5" alt="kaso3" border="0" height="304" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/6/1/61b78dc5.png"><br />OpenGLも、 1.1どまりのままです。<br /><br />Hyper-Vもグラフィック機能が進化したっていうのは、あくまでも、Vista以降のマシンをゲストにした場合の話です。<br />こんな、組み込みチップセット未満の性能しかないような Hyper-V を持ち出して、仮想環境を語ってはいけないのです<br /><br />少なくとも、VMWareのやVirtual Boxの仮想環境はHyper-Vとは次元が違いますの ( &#728;ω&#728;)
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032136.html">
<title>Windows 10 に Windows 8.1 のカタログデータベースを登録・削除する</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032136.html</link>
<description>C:\Users\Mofmof&gt;signtool catdb /v &quot;Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat&quot;Adding Catalog: Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat
Catalog added successfully: Adobe-Flash-For-Windows-Pa...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-14T12:00:46+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td  style="background-color: rgb(0, 0, 0);color: rgb(255, 255, 255);">C:\Users\Mofmof&gt;signtool catdb /v "Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat"<br /><br />Adding Catalog: Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat<br />
Catalog added successfully: Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat
<br />
<br />Number of catalog files successfully Added: 1
<br />Number of errors: 0</td></tr></tbody></table>すると、C:\Windows\System32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} にファイルがコピーされる<br /><br />ちなみにC:\Windows\System32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}にコピーして、catdb を再生成してみた場合は、作れなかった。<br />後、登録されてなくても、フォルダに同名のファイルがあるとエラー 2になって登録失敗する。<br />どうしても同名のファイルを登録する場合は /u オプションを付けると自動的に名前を付けて登録される。<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td  style="background-color: rgb(0, 0, 0);color: rgb(255, 255, 255);">C:\Users\Mofmof&gt;signtool catdb /v /r "Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat"
<br />Removing Catalog: Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat
<br />Catalog removed successfully: Adobe-Flash-For-Windows-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat<br />

<br />Number of catalog files successfully Removed: 1
<br />Number of errors: 0
</td></tr></tbody></table>削除する場合は /r 部分一致でもDBからは削除できるんだけど、ファイルが消されずに残る<br /><br />ちなみにcatdb を再生成する場合は、Cryptographic Servicesを停止して、<br />C:\Windows\System32\catroot2\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}のファイルを消して、<br />サービスを起動すればOK<br /><br />ちなみに、Windows 8.1 の secdrv.sys をWindows 10にカタログ登録できないかと思って模索して分かったこの方法だけど、 8.1の secdrv.sys はそもそもカタログに登録されてなかった。<br />Windows&nbsp; 8.1からsigntool verify で確認したら、不正なドライバーって判定された。<br /><strike>もしかすると、KB2919355 が当たってて、カタログから削除されてるだけの可能性もあるが。</strike><br />仮想環境を見たら適用に失敗して、動作していた<br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032074.html">
<title>Twitter の凍結が急に解除されたという人が居たので見に行ったらTwitter の凍結レベルが上がってた話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032074.html</link>
<description>Misskey のタイムラインにTwitter の凍結が急に解除されたって人が居たので久しぶりに見に行ったら、凍結のランクが上がってできることが減ってました･ω･凍結されて50日目なのは…多分関係ないと思うんだけどこれまではずっと、おすすめツイートが表示できていて、ざっくり...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-13T12:00:40+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[Misskey のタイムラインにTwitter の凍結が急に解除されたって人が居たので久しぶりに見に行ったら、凍結のランクが上がってできることが減ってました･ω･<br />凍結されて50日目なのは…多分関係ないと思うんだけど<br /><br /><img  class="pict" hspace="5" alt="twl" border="0" height="355" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/5/058c298b.png"><br />これまではずっと、おすすめツイートが表示できていて、ざっくりフォロワーが誰なのか把握できていたのですが、それも見れなくなりました ･ω･<br /><br /><a  title="" target="_blank" href="https://nlab.itmedia.co.jp/nl/articles/2203/11/news090.html">Twitter、突然の表示変更で「Twitter改悪」がトレンドに　「ホームタブ非表示にさせて」「何がなんでもホーム表示させようとすんな」と悲鳴（1/2 ページ） - ねとらぼ</a><br /><a  title="" target="_blank" href="https://help.twitter.com/ja/using-twitter/twitter-timeline">Twitterの [おすすめ] タイムラインについて</a><br /><br />ただ、Twitterを起動したときにデフォルトで表示される、この今回見れなくなった、おすすめのタイムラインがちょっと気持ちが悪かったのが、やたら、政治色の強いツイートの内容がかなりの頻度で表示されていたことですかね･ω･<br /><br />中共勢力の人の発言とか、反ワクチンとか、陰謀論に染まった偏った、フォローしてない人のツイートがやたら流れてくるの<br /><br />多分、あんまり知識のない人が、あんな内容ばっかり流れてくるのを見たら、それが真実だと思うようになっちゃって、狂うと思うん ・ω・<br />近年、Twitterは明らかにそういう、世論操作やってるんだろうなというのが感想です。<br /><br /><br />そういや、明瞭な、QAnon 批判アカウントなので、復活できないのかもしれませんね<br />もしかして、QAnonべた褒めしたら復活できるんかしらｗ？ ･ω･<br />
<blockquote  class="twitter-tweet"><p  dir="ltr" lang="ja">うわー…<br />イーロン・マスクがQAnonインフルエンサーのツイート拡散しているって話<br /><br />イーロンマスクがQAnon寄りだと知ってたけど、露骨にQAnon拡散するとは <a  href="https://t.co/KCHZSw4gVh">https://t.co/KCHZSw4gVh</a></p>&#8212; みつを_Mitsuwo&#127803; (@ura5ch3wo) <a  href="https://twitter.com/ura5ch3wo/status/1638325317218746368?ref_src=twsrc%5Etfw">March 21, 2023</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<br />
<br /><a  title="" target="_blank" href="https://newspicks.com/topics/product-thinking/posts/34">はがれた化けのマスク - 起業家の本質</a><br /><br /><script src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032050.html">
<title>【ネタ】Windows 10って手抜きOSじゃないですか！その240 / Google Chrome が Windows 10でやたらフリーズする理由</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032050.html</link>
<description>Windows 10 で Google Chrome 使ってて、なんか、窓が反応しなくなること、やたら多いなと思ったことはありませんか？これ、実は Chrome のメインプロセスが停止してるのが原因なんです。タスクマネージャーでコマンドライン引数のない chrome.exe が中断になってたらそうい...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-12T14:11:03+09:00</dc:date>
<dc:subject>Windows 10</dc:subject>
<content:encoded><![CDATA[<img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/7/578d2ef9.png" width="332" height="243" border="0" alt="crd" hspace="5" class="pict"><br />Windows 10 で Google Chrome 使ってて、なんか、窓が反応しなくなること、やたら多いなと思ったことはありませんか？<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/b/6/b6a7afdf.png" width="408" height="347" border="0" alt="crd2" hspace="5" class="pict"><br />これ、実は Chrome のメインプロセスが停止してるのが原因なんです。<br />タスクマネージャーでコマンドライン引数のない chrome.exe が中断になってたらそういう事です。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/d/a/da3b495f.png" width="408" height="310" border="0" alt="crd3" hspace="5" class="pict"><br />中断になってるなら動かせばいいじゃない？ってと思うかもしれません。<br />でも、実は、停止になってる理由は、【メモリ不足でアプリがクラッシュしたから】なんです。<br />クラッシュしたなら、とっととメモリ解放すればいいのに！と思うかもしれませんが、永久にこのまま固まったままになります。<br />ちなみに、無理やり再開すれば、プログラムが終了します。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/4/74320b34.png" width="408" height="164" border="0" alt="crd4" hspace="5" class="pict"><br />…と思っていた時期が私にもありました。<br />終了しても、 --crashpad-handler と言うクラッシュ時の番をしてるプロセスだけ残ります。<br />スクショで３つ残ってるのは、３回クラッシュしたからです。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/8/48ae15f7.png" width="408" height="195" border="0" alt="crd5" hspace="5" class="pict"><br />ちなみに、--crashpad-handler&nbsp; のプロセスは正常動作してるときに落としても問題なさそうです。<br />ただし、落とすと、クラッシュした際に再開できなくなるかもしれません。<br />…が試してみたら、普通に再開できました。何やってるか謎です ･ω･<br /><br /><br /><br /><br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032043.html">
<title>編集するたびに壊れるリソースファイルの謎</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032043.html</link>
<description>Windows-classic-samples/WicViewerGdiPlus.rc at main ・ microsoft/Windows-classic-samples ・ GitHubMicrosoft からダウンロードしてきたプロジェクトのリソースファイルが編集するたびに壊れるという現象を起こします。壊れたときに、違いを調べてみるとAPSTUDIO_READON...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-11T12:00:00+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<img  class="pict" hspace="5" alt="broken" border="0" height="272" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/d/e/de05020d.png"><br /><a  title="" target="_blank" href="https://github.com/microsoft/Windows-classic-samples/blob/main/Samples/Win7Samples/multimedia/wic/wicviewergdiplus/WicViewerGdiPlus.rc">Windows-classic-samples/WicViewerGdiPlus.rc at main ・ microsoft/Windows-classic-samples ・ GitHub</a><br />Microsoft からダウンロードしてきたプロジェクトのリソースファイルが編集するたびに壊れるという現象を起こします。<br /><br /><img  class="pict" hspace="5" alt="broken2" border="0" height="331" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/5/756d77ea.png"><br />壊れたときに、違いを調べてみると<br />APSTUDIO_READONLY_SYMBOLSのセクションが吹っ飛んでた<br /><br />ちなみに、ここだけ直せば一時的に直るのだけど、後ろに原因があるようだ<br /><br /><img  class="pict" hspace="5" alt="broken3" border="0" height="369" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/3/6/3663f994.png"><br /><br />TEXTINCLUDEセクションで追加ファイルが指定されてないと毎回壊れるようだ･ω･<br /><br /><br /><br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032029.html">
<title>Windows 2000非対応アプリを動かすとウインドウが透明になることがある理由が判明</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032029.html</link>
<description>今まで、Windows 2000で非対応アプリを起動した時よく発生する『ウィンドウの中が透明で描画されない現象』原因が不明だったのですがようやく理由が判明しました。同じプログラムを Windows 10とかで起動するとこうなります。FillRect などの古いAPIで描画すると半透明に対応...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-10T12:00:59+09:00</dc:date>
<dc:subject>Windows2000</dc:subject>
<content:encoded><![CDATA[<img  class="pict" hspace="5" alt="whi2" border="0" height="311" width="413" src="https://livedoor.blogimg.jp/blackwingcat/imgs/c/c/cc8acc4b.png"><br />今まで、Windows 2000で非対応アプリを起動した時よく発生する『ウィンドウの中が透明で描画されない現象』原因が不明だったのですがようやく理由が判明しました。<br /><br />同じプログラムを Windows 10とかで起動すると<br /><br /><img  class="pict" hspace="5" alt="whi1" border="0" height="380" width="415" src="https://livedoor.blogimg.jp/blackwingcat/imgs/3/3/33c95dcc.png"><br />こうなります。<br /><br />FillRect などの古いAPIで描画すると半透明に対応していないので、指定した色がそのまま出てくるのですが、Gdiplus::SolidBrush などで定義したブラシは最上位が α プレーンになります。<br />0 を指定すると透明なので、何も描画されないわけですが、Windows XP以降の場合、なぜかいったん白で初期化するので、描画されなくても気づかないという訳です。<br /><br />つまり、Windows 2000で透明になっちゃうのはプログラム側のバグなんですね ･ω･<br />例えば、吉里吉里のゲームアプリなんかがそうですね ･ω･<br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032076.html">
<title>MSUや MSCABを解凍するだけの便利なバッチファイル</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032076.html</link>
<description>@echo off cd &quot;%~p1&quot; for /f &quot;tokens=1 delims=_&quot; %%a in (&quot;%~n1&quot;) do ( set tdir=%%a )md &quot;%tdir%&quot;md &quot;%tdir%\tmp&quot;if &quot;%~x1&quot; == &quot;.exe&quot; goto exeext if &quot;%~x1&quot; == &quot;.cab&quot; goto cabext expand -f:*.cab &quot;%1&quot; &quot;%tdir%\tmp&quot; expand -f:*.* &quot;%tdir%\tmp\*.cab&quot; &quot;%tdir%&quot; goto en...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-09T12:00:21+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>@echo off<br /> cd "%~p1"<br /> for /f "tokens=1 delims=_" %%a in ("%~n1") do ( <br />set tdir=%%a <br />)<br />md "%tdir%"<br />md "%tdir%\tmp"<br />if "%~x1" == ".exe" goto exeext<br /> if "%~x1" == ".cab" goto cabext<br /> expand -f:*.cab "%1" "%tdir%\tmp" <br />expand -f:*.* "%tdir%\tmp\*.cab" "%tdir%" <br />goto end <br />:cabext <br />expand -f:*.* "%1" "%tdir%" <br />goto end <br />:exeext <br />"%1" /x:"%tdir%" <br />:end<br /></td></tr></tbody></table>Microsoft の新形式のCAB ファイルを解凍する時結構めんどくさいので･･<br />元のファイル名と同じフォルダを作ります。<br />ファイル名に _ が含まれてる場合はそれ以降の文字をハッシュと考えて削ります<br /><br /><a  title="" target="_blank" href="http://win2k.org/cgi-bin/dl.cgi?file=extractcab.cab">extractcab.cab</a><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031949.html">
<title>PageRequestManagerParserErrorException を catch する方法</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031949.html</link>
<description>Ajax / UpdatePanel のタイムアウトの挙動を調べてみた

&quot;Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-08T12:00:35+09:00</dc:date>
<dc:subject>.NET Framework</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031947.html">Ajax / UpdatePanel のタイムアウトの挙動を調べてみた</a>

<table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>"Sys.WebForms.PageRequestManagerParserErrorException:<br /> The message received from the server could not be parsed.<br /> Common causes for this error are when the response is <br />modified by calls to Response.Write(), response filters,<br /> HttpModules, or server trace is enabled.
Details: Error parsing near '
</td></tr></tbody></table>前回の応用です<br />セッションタイムアウトで上記のようなエラーが出た場合<br />AsyncPostBackで処理しろって書いてるサイトもあるんですが、チケットの期限が切れてる場合そもそも onAsyncPostBack が発生しなかったりします。<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>Sys.Application.add_init(AppInit);<br />function AppInit(sender){<br />&nbsp; var prm = Sys.WebForms.PageRequestManager.getInstance(); <br />&nbsp; if (!prm.get_isInAsyncPostBack()) {<br />&nbsp; &nbsp; prm.add_endRequest(onEndRequest);<br />&nbsp; }<br /> }<br /></td></tr></tbody></table>そこで、onEndRequest を使います。<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>function onEndRequest(sender, args) {<br />&nbsp; if (args.get_error() != undefined) {<br />&nbsp; &nbsp; var error = args.get_error();<br />&nbsp; &nbsp; if (error.name == <br />&nbsp; &nbsp; &nbsp; "Sys.WebForms.PageRequestManagerParserErrorException") {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;args.set_errorHandled(true);<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;window.alert("TimeOutでリロードします");<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;window.open("/Default.aspx", "_self");<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return;<br />&nbsp; &nbsp; }<br />&nbsp; &nbsp; var errorMessage = args.get_error().message;<br />&nbsp; &nbsp; window.alert(error.message); <br />&nbsp; } <br />}</td></tr></tbody></table>こんな感じでSys.WebForms.PageRequestManagerParserErrorException だった時<br />リダイレクトで認証ページに飛ばせば解決なのです<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031947.html">
<title>Ajax / UpdatePanel のタイムアウトの挙動を調べてみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031947.html</link>
<description>使ったコード

&lt;asp:ScriptManager ID=&quot;ScriptManager&quot; runat=&quot;server&quot;&gt;  &lt;Scripts&gt;     &lt;asp:ScriptReference Path=&quot;javascript/request.js&quot; /&gt;  &lt;/Scripts&gt; &lt;/asp:ScriptManager&gt;Sys.Application.add_init(AppInit);function AppInit(sender){  var prm = Sys.WebForm...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-07T12:00:26+09:00</dc:date>
<dc:subject>.NET Framework</dc:subject>
<content:encoded><![CDATA[使ったコード

<table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>&lt;asp:ScriptManager ID="ScriptManager" runat="server"&gt;<br />&nbsp; &lt;Scripts&gt; <br />&nbsp; &nbsp; &lt;asp:ScriptReference Path="javascript/request.js" /&gt;<br />&nbsp; &lt;/Scripts&gt;<br /> &lt;/asp:ScriptManager&gt;</td></tr></tbody></table><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>Sys.Application.add_init(AppInit);<br />function AppInit(sender){<br />&nbsp; var prm = Sys.WebForms.PageRequestManager.getInstance(); <br />&nbsp; if (!prm.get_isInAsyncPostBack()) {<br />&nbsp; &nbsp; prm.add_initializeRequest(InitializeRequest);<br />&nbsp; &nbsp; prm.add_beginRequest(onBeginRequest);<br />&nbsp; &nbsp; prm.add_endRequest(onEndRequest);<br />&nbsp; &nbsp; prm.add_pageLoaded(onPageLoaded);<br />&nbsp; &nbsp; prm.add_pageLoading(onPageLoading); <br />&nbsp; }<br /> }<br /></td></tr></tbody></table><br />通常は<br />ページの表示<br />initializeRequest のみ<br /><br />スクリプト実行時<br />initializeRequest<br />beginRequest<br />onPageLoading<br />onPageLoaded<br />onEndRequest<br /><br />タイムアウト時<br />initializeRequest<br />beginRequest<br />onEndRequest<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031926.html">
<title>へたくそプログラマーが書いたコードを書きなおした話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031926.html</link>
<description>プログラムがあまりうまくない人が書いたコードがどういうものかと言うのを紹介します。ちなみに、書き直したら、１日処理しても終わらなかったデータ処理が１分もかからず終わるようになりました。プログラムは、複数件のデータの削除をするというもの問題１．１件削除する...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-06T12:00:41+09:00</dc:date>
<dc:subject>Programing</dc:subject>
<content:encoded><![CDATA[プログラムがあまりうまくない人が書いたコードがどういうものかと言うのを紹介します。<br />ちなみに、書き直したら、１日処理しても終わらなかったデータ処理が１分もかからず終わるようになりました。<br /><br />プログラムは、複数件のデータの削除をするというもの<br /><br />問題１．１件削除するごとに、全データの書き込み、再読み込みを行っている。<br />改善　最初に読み込みをして、最後に書き込むようにしました。<br />効果　処理時間が半分になりました。<br /><br />問題２．なぜか、データ処理の先頭で、毎回全データを表現するためのオブジェクトの生成処理が入っていました。<br />改善　使ってないのは全部削除。<br />効果　データの件数x3処理していたのが、１回だけの処理になり処理時間が1/500になりました。<br /><br />問題３．データの削除をして切り詰める処理。処理前に全データのバックアップをとっておき、削除データがなかった場合は元に戻すという処理をしていました。<br />改善　バックアップリストア処理はなくして、最初にデータスキャンして、なければエラー。あった場合は処理するように変更しました。<br />効果　メモリ使用量が減りました。<br /><br />問題４．文字列比較のために、一度、双方の文字列を大文字に変換する変数を用意しておいて、変換後＝で比較していました。<br />改善　string.compareで大文字小文字無視の処理に変更しました。<br />効果　少し無駄が減った<br /><br />あんまり、プログラムが得意じゃない人は、良く分からないコードを書くという例でした ･ω･<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031886.html">
<title>【ネタ】Windows 10って手抜きOSじゃないですか！その239 / One Driveに表示されないゴミファイルがあった話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031886.html</link>
<description>PCの空き容量が無くなったので、容量を食ってるフォルダを探していたときの話。OneDrive直下のフォルダが 3G近く使ってる！？dir してみたけど、300Mしか使ってない件dir /a にしたら、~$ で始まる巨大な隠しファイルが沢山ありました~$で始まるのは Office アプリの一時ファ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-05T12:00:10+09:00</dc:date>
<dc:subject>Windows 10</dc:subject>
<content:encoded><![CDATA[PCの空き容量が無くなったので、容量を食ってるフォルダを探していたときの話。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/e/a/ea8bd3d8.png" width="408" height="424" border="0" alt="oned1" hspace="5" class="pict"><br />OneDrive直下のフォルダが 3G近く使ってる！？<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/7/873e07d9.png" width="404" height="98" border="0" alt="oned2" hspace="5" class="pict"><br />dir してみたけど、300Mしか使ってない件<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/3/53b865df.png" width="409" height="202" border="0" alt="oned3" hspace="5" class="pict"><br />dir /a にしたら、~$ で始まる巨大な隠しファイルが沢山ありました<br />~$で始まるのは Office アプリの一時ファイルですね…こんなにあるとは‥‥<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031884.html">
<title>【X86】変数を確保していない関数内で代入引数のある関数を呼ぶ</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031884.html</link>
<description>変数を確保していなかったり、スタックフレームが生成されていない関数内で代入引数のある関数を呼び出すためのテクニックの紹介ですint WINAPI Val1Func(DWORD *val)と言う関数があったとします。push 0 // 初期値push espcall Val1Funcpop eaxこれで関数呼び出し後、最初の...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-04T12:00:38+09:00</dc:date>
<dc:subject>Programing</dc:subject>
<content:encoded><![CDATA[変数を確保していなかったり、スタックフレームが生成されていない関数内で<br />代入引数のある関数を呼び出すためのテクニックの紹介です<br /><br />int WINAPI Val1Func(DWORD *val)<br />と言う関数があったとします。<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>push 0 // 初期値<br />push esp<br />call Val1Func<br />pop eax<br /></td></tr></tbody></table>これで関数呼び出し後、最初の pop で代入された valが取り出せます。<br />(ebpを使わずに)スタックフレームがないなら作る訳です。<br /><br />２バイト以上の変数引き渡しが必要な場合は少し複雑になります<br />int WINAPI Val2Func(DWORD *val, DWORD *val2)<br /><table  border="1" width="404" style="font-size: x-small;"><tbody><tr><td>mov eax, 0xbadbeef<br />push eax // 初期値1<br />push eax // 初期値2<br /><br />mov eax,esp<br /><br />push eax&nbsp;// 引数2のポインタ<br />add eax,4<br />push eax // 引数1のポインタ<br />call Val2Func<br />pop edx&nbsp; // val2<br />pop eax&nbsp; // val1</td></tr></tbody></table>初期化が不要な場合は sub esp,4*変数の数 でも構いません　<br />これが基本計で、 最初の push eax と add eax,4 / push eax と pop が増えるだけです<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031805.html">
<title>【misskey】もふきー v0.1.1a リリース</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031805.html</link>
<description>【BM】Misskey Windows 95対応クライアント もふきー！もふきー！のアップデートを行いました。修正は以下の通り。・json パケットが1024バイト以上送信できない不具合修正。(日本語300文字前後送ると不具合)・Rep機能追加・一部の環境で２回目の起動時にクラッシュする不具...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-03T12:00:58+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  href="http://blog.livedoor.jp/blackwingcat/archives/2031656.html" target="_blank" title="">【BM】Misskey Windows 95対応クライアント もふきー！</a><br />もふきー！のアップデートを行いました。<br /><br />修正は以下の通り。<br />・json パケットが1024バイト以上送信できない不具合修正。<br />(日本語300文字前後送ると不具合)<br />・Rep機能追加<br />・一部の環境で２回目の起動時にクラッシュする不具合修正<br />・TLS 1.3対応<br /><img  class="pict" hspace="5" alt="mofkey16" border="0" height="169" width="373" src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/4/54a2e8de.png"><br /><br />赤枠内にnote のIDを入力してりぷるとレスになる機能です。<br />インスタンスURL/noteid であればそのまま貼り付けてもOK<br />別のインスタンスにはリプできません。<br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031800.html">
<title>Mypal 68 の新バージョンがリリース</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031800.html</link>
<description>Feodor2/Mypal68: web browserMypal 64.13bがリリースされました。※ Windows 2000で起動する場合 XP互換モードの設定が必要 JavaScript エンジンが Firefox 78互換になったようで、以前見れなくなったサイトも表示可能になり、拡張機能の対応バージョンも 79に引き上げられ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-02T12:00:57+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://github.com/Feodor2/Mypal68/">Feodor2/Mypal68: web browser</a><br />Mypal 64.13bがリリースされました。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/3/53b151ef.png" width="408" height="301" border="0" alt="mypal2" hspace="5" class="pict"><br />※ Windows 2000で起動する場合 XP互換モードの設定が必要<br /><br />&nbsp;JavaScript エンジンが Firefox 78互換になったようで、以前見れなくなったサイトも表示可能になり、拡張機能の対応バージョンも 79に引き上げられたため、最新の拡張機能がインストールできる可能性もあります。<br />注意点としては言語パックの互換性が無くなってるのでアンインストールして下さいとのことです。<br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031766.html">
<title>【ネタ】Windows 10って手抜きOSじゃないですか！その238 / Windows Updateで強制再起動した挙句データロスト</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031766.html</link>
<description>朝起きたらPCの電源が切れていたので、イベントログを確認してみた次の理由で、プロセス C:\WINDOWS\system32\svchost.exe (PC-MOF) は、ユーザー NT AUTHORITY\SYSTEM の代わりに、コンピューター PC-MOF の 再起動 を始めました: オペレーティング システム: Service pack...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-06-01T12:00:49+09:00</dc:date>
<dc:subject>Windows 10</dc:subject>
<content:encoded><![CDATA[朝起きたらPCの電源が切れていたので、イベントログを確認してみた<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>次の理由で、プロセス C:\WINDOWS\system32\svchost.exe (PC-MOF) は、ユーザー NT AUTHORITY\SYSTEM の代わりに、コンピューター PC-MOF&nbsp;の 再起動 を始めました: オペレーティング システム: Service pack (計画済)
 理由コード: 0x80020010
 シャットダウンの種類: 再起動
</td></tr></tbody></table>再起動が計画されたというのは分かるのだが、電源が落ちていたのは解せない<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>カーネル電源マネージャーがシャットダウンへの切り替えを開始しました。 シャットダウンの理由: Kernel API</td></tr></tbody></table>ログを見ると途中で、電源OFFに切り替わってしまっている<br />Windows Vista以降は作業中で保存していない文書があっても、再起動後復帰することができる機能を持っている<br /><br />APIを挙げると<br /><div>アプリの再起動の登録(RegisterApplicationRestart)</div><div>アプリの再起動の登録解除(UnregisterApplicationRestart)</div><div>が該当する<br /><br />例えば再起動後、 RestartByRestartManager と言うコマンドラインで起動されているのはそういった方法で復元されたプロセスだ</div><img  class="pict" hspace="5" alt="tsk2" border="0" height="148" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/c/7c246b3f.png"><br /><br />しかし、再起動後、Wifiがうまく認識してくれなかったせいで問題が発生した<br /><br /><img  class="pict" hspace="5" alt="tsk3" border="0" height="159" width="255" src="https://livedoor.blogimg.jp/blackwingcat/imgs/f/5/f5fce32e.png"><br /><br /><img  class="pict" hspace="5" alt="tsk4" border="0" height="157" width="267" src="https://livedoor.blogimg.jp/blackwingcat/imgs/f/4/f4426431.png"><br />復元されないメモ帳の中身<br /><br /><img  class="pict" hspace="5" alt="tsk" border="0" height="322" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/7/9/79971257.png"><br />復元済み（何も書かれていないペイント）<br /><br /><img  class="pict" hspace="5" alt="tsk5" border="0" height="186" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/c/6/c64d9333.png"><br />復元済み（何も残ってないEXCEL）<br /><br />ネットワーク上のデータの場合は、作業途中に強制再起動された場合、データが残らないことがある。<br />(一度も保存しない方がマシ)<br /><br />再起動の原因だったトリガを調べてみた<br /><table  style="font-size: x-small;" width="404" border="1"><tbody><tr><td>インストールの成功: 次の更新プログラムが正しくインストールされました: Microsoft Defender Antivirus のセキュリティ インテリジェンス更新プログラム - KB2267602 (バージョン 1.391.70.0)</td></tr></tbody></table><BR>Windows Defender でした。またお前か！ ･ω･
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031745.html">
<title>もふきーv0.1.0のバグ修正と SSL_library_init</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031745.html</link>
<description>もふきー！ v0.1.0では、SSL_library_init 関数が非推奨になったことを鑑みて、OPENSSL_init_ssl に関数を置き換えたのですが、SSL_library_init() を OPENSSL_init_ssl(0, NULL) に置き換えればいいという事でcdecl function (void*,void*)を呼び出すようにしていて、Window...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-31T12:01:12+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[もふきー！ v0.1.0では、SSL_library_init 関数が非推奨になったことを鑑みて、OPENSSL_init_ssl に関数を置き換えたのですが、<br /><br />SSL_library_init() を OPENSSL_init_ssl(0, NULL) に置き換えればいいという事で<br />cdecl function (void*,void*)を呼び出すようにしていて、Windows 10環境のDebug版やWindows 95のリリース版ではうまく動いていたのですが、どうやら NT系OSのリリース版だとクラッシュするようなので調べてみました。<br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);</td></tr></tbody></table>調べてみたら、 第一引数が 64bitでした orz<br /><br />つまり、cdecl function (void*,void*,void*)にしないとスタックフレームのごみデータが混入してしまう訳ですね。<br />という訳で修正版をアップロードしておきました ･ω･<br /><br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031714.html">
<title>【misskey】もふきー v0.1.0にプチアップデート</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031714.html</link>
<description>【BM】Misskey Windows 95対応クライアント もふきー！もふきー！のプチアップデートを行いました。修正は以下の通り。・Windows 8.1のHelpファイル対応アップデートのインストーラーが混入していたので削除・同梱の opensslを 1.1.1cから1.1.1tに更新・jQueryのlicense を追...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-30T12:00:52+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031656.html">【BM】Misskey Windows 95対応クライアント もふきー！</a><br />もふきー！のプチアップデートを行いました。<br /><br />修正は以下の通り。<br /><br />・Windows 8.1のHelpファイル対応アップデートのインストーラーが混入していたので削除<br /><div>・同梱の opensslを 1.1.1cから1.1.1tに更新</div><div>・jQueryのlicense を追加</div><div>・openssl 1.1/3.xネイティブ形式に対応<br />※ libssl-3 → libssl-1_1 → ssleay32 の順で読み込みを試行します</div><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031698.html">
<title>Windows 95 対応。OpenSSL 3.1.0 リリース</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031698.html</link>
<description>OpenSSL: OpenSSL 3.1 Release Notes.例の Windows 95 以降向けのバイナリはこちらWindows 95 で動作するOpenSSLライブラリ作ったよ！今回も 3.1 版 の中にWin95で動作する 3.1 版SSE2対応で動作する 3.1版 (Win95はOS自体が SSE/SSE2非対応) の2つが入っていますがさらにそ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-29T12:00:15+09:00</dc:date>
<dc:subject>Networkサービス</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://www.openssl.org/news/cl31.txt">OpenSSL: OpenSSL 3.1 Release Notes.</a><br /><br />例の Windows 95 以降向けのバイナリはこちら<br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/1591502.html">Windows 95 で動作するOpenSSLライブラリ作ったよ！</a><br /><br />今回も 3.1 版 の中に<br />Win95で動作する 3.1 版<br />SSE2対応で動作する 3.1版 (Win95はOS自体が SSE/SSE2非対応) <br /><div>の2つが入っていますが</div><div>さらにその中にLegacy フォルダがあり、従来の openssl 1.0.0 互換ファイル名/互換関数内蔵のものが入っています<br /></div><div><br />1.1.1 系の修正そのまま適用したら動いてしまったので…。<br /></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031689.html">
<title>削除できなくなった Hyper-V 仮想マシンを削除する</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031689.html</link>
<description>Hyper-Vの仮想マシンが表示はあるのに削除できないという状況になったのでメモ･ω･フォルダC:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machineに、ＵＵＩＤ形式のファイルやショートカットが保存されている。何の仮想マシンなのかは&lt;Controller タグの Pathnameから...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-28T12:00:55+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[Hyper-Vの仮想マシンが表示はあるのに削除できないという状況になったのでメモ･ω･<br /><br />フォルダ<br />C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machine<br />に、ＵＵＩＤ形式のファイルやショートカットが保存されている。<br /><br />何の仮想マシンなのかは<br />&lt;Controller タグの Pathnameから類推する<br /><br />中身が要らないやつなら、ショートカットとファイルを消せばリストから消える ･ω･<br />念のため、 Hyper-V Virtual Machine Management サービスは停止させておくのを推奨<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031687.html">
<title>Windows 95 対応。OpenSSL 1.1.1t リリース</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031687.html</link>
<description>OpenSSL: OpenSSL 1.1.1 Release Notes.例の Windows 95 以降向けのバイナリはこちらWindows 95 で動作するOpenSSLライブラリ作ったよ！今回も 1.1.1t 版 の中にWin95で動作する 1.1.1t 版SSE2対応で動作する 1.1.1t版 (Win95はOS自体が SSE/SSE2非対応) の2つが入っています...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-27T12:00:22+09:00</dc:date>
<dc:subject>Networkサービス</dc:subject>
<content:encoded><![CDATA[<a  target="_blank" href="https://www.openssl.org/news/openssl-1.1.1-notes.html">OpenSSL: OpenSSL 1.1.1 Release Notes.</a><br /><br />例の Windows 95 以降向けのバイナリはこちら<br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/1591502.html">Windows 95 で動作するOpenSSLライブラリ作ったよ！</a><br /><br />今回も 1.1.1t 版 の中に<br />Win95で動作する 1.1.1t 版<br />SSE2対応で動作する 1.1.1t版 (Win95はOS自体が SSE/SSE2非対応) <br /><div>の2つが入っていますが</div><div>さらにその中にLegacy フォルダがあり、従来の openssl 1.0.0 互換ファイル名/互換関数内蔵のものが入っています<br /></div><div><br />1.1.1系としては最後のアップデートだったのでリリースしました ･ω･</div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031656.html">
<title>【BM】Misskey Windows 95対応クライアント もふきー！</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031656.html</link>
<description>もふる(発言する)だけのmisskey 用 シンプルクライアント、もふきー！リリースしましたver 0.0.9 (2023/5/27)ver 0.1.0b (2023/5/31)ver 0.1.1a (2023/6/2)更新履歴v0.0.9・同梱の opensslを 1.1.1tに変更・jQueryのlicense を追加・openssl 1.1/3.xネイティブ形式に対応v0...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-26T12:00:29+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[もふる(発言する)だけのmisskey 用 シンプルクライアント、もふきー！<br />リリースしました<br /><img  class="pict" hspace="5" alt="mofkey15" border="0" height="492" width="373" src="https://livedoor.blogimg.jp/blackwingcat/imgs/b/6/b61a7ee6.png"><br /><br /><a  title="" target="_blank" href="http://win2k.org/cgi-bin/dl.cgi?file=mofkey009.cab">ver 0.0.9</a> (2023/5/27)<br /><a  href="http://win2k.org/cgi-bin/dl.cgi?file=mofkey010b.cab" target="_blank" title="">ver 0.1.0b</a>&nbsp;(2023/5/31)<br /><a  href="http://win2k.org/cgi-bin/dl.cgi?file=mofkey011a.cab" target="_blank" title="">ver 0.1.1a</a>&nbsp;(2023/6/2)<br /><br />更新履歴<br /><div><div>v0.0.9</div><div>・同梱の opensslを 1.1.1tに変更</div><div>・jQueryのlicense を追加</div><div>・openssl 1.1/3.xネイティブ形式に対応</div><br /><div>v0.1.0</div><div>・openssl bugfix</div><br /><div>v0.1.1a</div><div>・リプ機能</div><div>・1000文字以上送信できない不具合修正</div></div><div>・一部の環境でクラッシュする不具合修正<br /><br /></div>タイムラインの表示機能など、<br />追加機能は今後実装していくという事で (･ω･)<br />ちなみにログは、v0.0.9では CSV形式で新しいものが保存されます。<br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2032058.html">
<title>IWICBitmapSource を クリップボードに転送するのがうまくいかなかった話</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2032058.html</link>
<description>単純にIWICBitmapSource をClipboardに転送しようと思ったら HBITMAPに変換してSetClipboardData(CF_BITMAP, hBitmap)実行すればいいものだと思ってました。最初に参考にしたサイトは、地道に データ作って CreateBitmapするものだった。HBitmap 自体はちゃんとしたデータな...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-25T12:00:11+09:00</dc:date>
<dc:subject>Windows全般</dc:subject>
<content:encoded><![CDATA[単純にIWICBitmapSource をClipboardに転送しようと思ったら HBITMAPに変換して<br />SetClipboardData(CF_BITMAP, hBitmap)<br />実行すればいいものだと思ってました。<br /><br />最初に参考にしたサイトは、地道に データ作って CreateBitmapするものだった。<br />HBitmap 自体はちゃんとしたデータなのだけど、コピーできませんでした。<br /><br />次に参考にしたのが GdiPlus::GetHBITMAPを使うものだったのだけどこれもNG。<br /><br />試しに、適当な BMPファイルをLoadImageで取り出してみたらコピーできたので<br />GdiPlus::Saveで前述の Bitmap を保存してからLoadImageで試してみたところ、コピーに失敗した。<br /><br />どうやら、クリップボードに転送できない BMPデータがあるようだ ･ω･<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>void SetBitmapSourceonClipboard(IWICBitmapSource*&nbsp;pImage)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;HANDLE&nbsp;tt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;HBITMAP&nbsp;bitmap;<br />
&nbsp;&nbsp;&nbsp;&nbsp;WICPixelFormatGUID&nbsp;format;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;UINT&nbsp;width&nbsp;=&nbsp;0,&nbsp;height&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;pImage-&gt;GetSize(&amp;width,&nbsp;&amp;height);<br />
&nbsp;&nbsp;&nbsp;&nbsp;HRESULT&nbsp;hr&nbsp;=&nbsp;pImage-&gt;GetPixelFormat(&amp;format);<br />
&nbsp;&nbsp;&nbsp;&nbsp;UINT&nbsp;bpp&nbsp;=&nbsp;GetBpp(&amp;format);<br />
&nbsp;&nbsp;&nbsp;&nbsp;IWICBitmap*&nbsp;copyBMP;<br />
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;sz&nbsp;=&nbsp;(width&nbsp;*&nbsp;bpp)&nbsp;/&nbsp;8;<br />
&nbsp;&nbsp;&nbsp;&nbsp;BITMAPV5HEADER&nbsp;bi&nbsp;=&nbsp;{&nbsp;0&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;HGLOBAL&nbsp;global&nbsp;=&nbsp;GlobalAlloc(GMEM_MOVEABLE,&nbsp;sizeof(bi)&nbsp;+&nbsp;&nbsp;height&nbsp;*&nbsp;(sz&nbsp;+&nbsp;3)/4&nbsp;*&nbsp;4&nbsp;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Size&nbsp;=&nbsp;sizeof(BITMAPV5HEADER),<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Width&nbsp;=&nbsp;width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Height&nbsp;=&nbsp;height;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Planes&nbsp;=&nbsp;1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5BitCount&nbsp;=&nbsp;(WORD)bpp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Compression&nbsp;=&nbsp;BI_RGB;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5SizeImage&nbsp;=&nbsp;bpp&nbsp;/&nbsp;8&nbsp;*&nbsp;width&nbsp;*&nbsp;height;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5RedMask&nbsp;=&nbsp;0x000000ff;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5GreenMask&nbsp;=&nbsp;0x0000ff00;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5BlueMask&nbsp;=&nbsp;0x00ff0000;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5AlphaMask&nbsp;=&nbsp;0xff000000;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5CSType&nbsp;=&nbsp;LCS_WINDOWS_COLOR_SPACE;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5Intent&nbsp;=&nbsp;LCS_GM_GRAPHICS;<br />
&nbsp;&nbsp;&nbsp;&nbsp;bi.bV5ClrUsed&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(global)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BYTE*&nbsp;buffer&nbsp;=&nbsp;(BYTE*)GlobalLock(global);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(buffer)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WICRect&nbsp;rc;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CopyMemory(buffer,&nbsp;&amp;bi,&nbsp;sizeof(bi));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rc.X&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rc.Width&nbsp;=&nbsp;width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rc.Height&nbsp;=&nbsp;1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;h=0;h&lt;height;h++)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rc.Y&nbsp;=&nbsp;height&nbsp;-&nbsp;h&nbsp;-&nbsp;1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pImage-&gt;CopyPixels(&nbsp;&amp;rc,&nbsp;sz,&nbsp;sz&nbsp;*&nbsp;1,&nbsp;buffer&nbsp;+&nbsp;(sz&nbsp;+&nbsp;3)&nbsp;/4&nbsp;*&nbsp;4&nbsp;&nbsp;*&nbsp;h&nbsp;+&nbsp;sizeof(bi));<br />
&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;GlobalUnlock(global);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EmptyClipboard();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tt=SetClipboardData(CF_DIBV5,&nbsp;global);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GlobalFree(global);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}<br />
</td></tr></tbody></table>最期に試したのが、DIBV5で転送する方法。<br />これはうまくいった<br /><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031614.html">
<title>Misskey API の sinceid と untilidの 大小比較が全く分からないのでコードから調べてみた</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031614.html</link>
<description>Misskey Server は TYPE SCRIPTで動作してるらしいので、GitHubのコードを参考に復号してアルゴリズムを調べてみたどうやら 種別は Aidらしいmisskey id checker(TypeScript) | ブラウザでプログラミング・実行ができる「オンライン実行環境」| paiza.IOオンラインで試せるサ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-24T12:00:06+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[Misskey Server は TYPE SCRIPTで動作してるらしいので、GitHubのコードを参考に復号してアルゴリズムを調べてみた<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/0/8016e65a.png" width="315" height="548" border="0" alt="geid" hspace="5" class="pict"><br />どうやら 種別は Aidらしい<br /><br /><a  href="https://paiza.io/projects/aC1utibJ5hvUe3QEhuWdAg" target="_blank" title="">misskey id checker(TypeScript) | ブラウザでプログラミング・実行ができる「オンライン実行環境」| paiza.IO<br /></a><br />オンラインで試せるサイトがあった。<br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>export const aidRegExp = /^[0-9a-z]{10}$/;<br />const TIME2000 = 946684800000;<br />function getTime(time: number): string {<br />&nbsp; time = time - TIME2000;<br />&nbsp; if (time &lt; 0) time = 0;<br />&nbsp; return time.toString(36).padStart(8, '0');<br />}<br />function genAid(date: Date): string {
<br />&nbsp; const t = date.getTime();<br />&nbsp; if (isNaN(t)) throw 'Failed to create AID: Invalid Date';<br />&nbsp; return getTime(t) + '00';<br />}<br />function parseAid(id: string): { date: Date; } {<br />&nbsp; const time = parseInt(id.slice(0, 8), 36) + TIME2000;<br />&nbsp; return { date: new Date(time) };<br />}<br />const tString = '7tcw9o2z38';<br />const date = new Date();<br />const gotAid = genAid(date);<br />console.log(parseAid(tString));<br />console.log(parseAid('7tcw9o2zmf'));<br />console.log(gotAid);</td></tr></tbody></table><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>#include &lt;string&gt;<br />
#include &lt;time.h&gt;<br />
#include &lt;windows.h&gt;<br />
using namespace std;<br />
<br />
const long long TIME2000 = 946684800;<br />
std::string toString36Pad8(long long data){<br />&nbsp;char s36[24]={0},res[10];<br />&nbsp;int k;<br />&nbsp;long long x;<br />&nbsp;do{<br />&nbsp; k=(data % 36);<br />&nbsp; if(k&gt;10)k=k+'a'-'0'-10;<br />&nbsp; k+='0';<br />&nbsp; lstrcpyA(res,s36);<br />&nbsp; wsprintfA(s36,"%c%s", k, res);<br />&nbsp; data = data / 36;<br />&nbsp;} while(data!=0);<br />&nbsp;if(lstrlenA(s36)&lt;8){<br />&nbsp; lstrcpyA(res,"0000000");<br />&nbsp; lstrcpyA(res+8-lstrlenA(s36), s36);<br />&nbsp;} else lstrcpyA(res, s36);<br />&nbsp;return std::string(res);<br />
} <br />
std::string getTime(long long time) {<br />&nbsp;time = (time - TIME2000)*1000;<br />&nbsp;if (time &lt; 0) time = 0;<br />&nbsp;return toString36Pad8((long long)time);<br />
}<br />
typedef long long time64_t;<br />
std::string genAid(unsigned long long date) {<br />&nbsp;time64_t t = date;<br />&nbsp;return getTime(t) + std::string("00");<br />
}<br />
<br />
long long parseInt36(std::string s){<br />&nbsp;int b=1;<br />&nbsp;long long r=0;<br />&nbsp;do{<br />&nbsp; if(s.c_str()[0] &gt; '9'){<br />&nbsp; &nbsp;r=(s.c_str()[0]-'a'+10)+r*36;<br />&nbsp; } else {<br />&nbsp; &nbsp;r=(s.c_str()[0]-'0')+r*36;<br />&nbsp; }<br />&nbsp; s=s.substr(1,99);	<br />&nbsp;}while(s.length()&gt;0);<br />&nbsp;return r;<br />
}<br />
std::string parseAid(std::string id) {<br />&nbsp;char tm[256];<br />&nbsp;time64_t time = (time64_t)parseInt36(id.substr(0, 8))/1000 + TIME2000;<br />&nbsp;struct tm l,*l2;<br />&nbsp;l2=_gmtime64(&amp;time);<br />
  //_localtime64_s(&amp;l, &amp;time);<br />
  //localtime wsprintfA(tm,"%02d/%02d/%02d %02d:%02d:%02d",1900+l.tm_year,1+l.tm_mon,l.tm_mday,l.tm_hour,l.tm_min,l.tm_sec);<br />&nbsp;wsprintfA(tm,"%02d/%02d/%02d %02d:%02d:%02d",1900+l2-&gt;tm_year,1+l2-&gt;tm_mon,l2-&gt;tm_mday,l2-&gt;tm_hour,l2-&gt;tm_min,l2-&gt;tm_sec);<br />&nbsp;return std::string(tm);<br />
}<br /><br />
int _tmain(int argc, _TCHAR* argv[])<br />
{	<br />&nbsp;struct tm *tmx;<br />&nbsp;time64_t date;<br />&nbsp;_time64(&amp;date);<br />&nbsp;const std::string gotAid = genAid(date);<br />&nbsp;OutputDebugStringA(parseAid("7tcw9o2z38").c_str());<br />&nbsp;OutputDebugStringA("\015\012");<br />&nbsp;OutputDebugStringA(parseAid("7tcw9o2zmf").c_str());<br />&nbsp;OutputDebugStringA("\015\012");<br />&nbsp;OutputDebugStringA(gotAid.c_str());<br />&nbsp;OutputDebugStringA("\015\012");<br />&nbsp;return 0;<br />
}<br />
</td></tr></tbody></table>VC++ に移植してみた
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031590.html">
<title>Windows NT6.xでレガシーアプリからマルチスレッドでネイティブ機能を呼び出すと TLS未初期化でクラッシュする</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031590.html</link>
<description>Windows 10で、Windows NT 5.xベースのアプリを開発、内部からマルチスレッドでネイティブ機能を呼び出したところクラッシュしてしまった。どうやら、TLS領域が初期化されていないらしく、Windows 2000/XPでWindows 7ネイティブアプリを起動したときの様な挙動になってしまっ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-23T12:00:06+09:00</dc:date>
<dc:subject>Windows Vista/7</dc:subject>
<content:encoded><![CDATA[Windows 10で、Windows NT 5.xベースのアプリを開発、内部からマルチスレッドでネイティブ機能を呼び出したところクラッシュしてしまった。<br /><br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/1/51d4cf89.png" width="407" height="511" border="0" alt="tls" hspace="5" class="pict"><br />どうやら、TLS領域が初期化されていないらしく、Windows 2000/XPでWindows 7ネイティブアプリを起動したときの様な挙動になってしまっている。<br /><br /><a  href="https://social.msdn.microsoft.com/Forums/en-US/e78adc3f-fb34-4309-a2c8-0d6c9a94b169/acess-violation-on-ihtmldocument2write-in-a-thread?forum=vcgeneral" target="_blank" title="">Acess Violation on IHTMLDocument2::write() in a thread</a><br />調べたら似たようなコード書いてる人が居た。<br />でも、IStream は使ってないのだよなぁ‥‥。<br /><br /><a  href="http://up-cat.net/main%25A4%25C8%25A5%25B9%25A5%25EC%25A5%25C3%25A5%25C9%25A4%25CE%25C1%25B0%25B8%25E5%25BD%25E8%25CD%25FD%25283%2529.html" target="_blank" title="">猫科研究所 - mainとスレッドの前後処理(3)</a><br /><a  href="https://web.archive.org/web/20081022150306/http://www.cyberarmy.net/library/article/1653" target="_blank" title="">Manually create a Thread Local Storage (TLS) Callback</a><br /><br />この辺り参考にしてTlsの初期化処理を自前で入れるしかないんだろうか･ω･<br /><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td>#pragma comment(linker, "/INCLUDE:__tls_used")<br />
#pragma data_seg(".tls")<br />
static void*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; flpthread_xla =0;<br />
static DWORD&nbsp;flpthread_tls_data&nbsp;= 0;<br />
static HANDLE flpthread_tls_index = NULL;<br />
IMAGE_TLS_DIRECTORY ti=<br />
{<br />
&nbsp;&nbsp;(DWORD)&amp;flpthread_tls_data,<br />
&nbsp;&nbsp;(DWORD)&amp;flpthread_tls_data,<br />
&nbsp;&nbsp;(DWORD)&amp;flpthread_tls_index,<br />
&nbsp;&nbsp;(DWORD)(&amp;flpthread_xla+1),<br />
&nbsp;&nbsp;(DWORD)0, // unused (not supported)<br />
&nbsp;&nbsp;(DWORD)0<br />
};<br />
#pragma data_seg()<br />
void __stdcall tls_callback( void*, DWORD dwReason, void* )<br />
<br />
{<br />
&nbsp;void *tls;<br />
&nbsp;&nbsp;switch( dwReason )<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;case DLL_PROCESS_ATTACH:<br />
//&nbsp;&nbsp;&nbsp;&nbsp;printf( "process attach\n" );<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;case DLL_PROCESS_DETACH:<br />
//&nbsp;&nbsp;&nbsp;&nbsp;printf( "process detach\n" );<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;case DLL_THREAD_ATTACH:<br />
&nbsp;&nbsp;ti.StartAddressOfRawData=TlsAlloc();<br />
//&nbsp;&nbsp;&nbsp;&nbsp;vec_tls = new std::vector<int>;<br />
//&nbsp;&nbsp;&nbsp;&nbsp;printf( " thread attach\n" );<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;case DLL_THREAD_DETACH:<br />
//&nbsp;&nbsp;&nbsp;&nbsp;delete vec_tls;<br />
//&nbsp;&nbsp;&nbsp;&nbsp;printf( " thread detach\n" );<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;}<br />
}<br />
<br />
<br />
#pragma data_seg(".CRT$XLB")<br />
PIMAGE_TLS_CALLBACK _xl_b = tls_callback;<br />
//PIMAGE_TLS_CALLBACK p_thread_callback = TlsCallBack;<br />
#pragma data_seg()<br />
</int></td></tr></tbody></table><br />コールバック関数は動くけど、初期化が良く分からぬ ･ω･<br />malloc で自分でメモリ確保するんかな？<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031559.html">
<title>いつの間にか、寄付ページのJavaScriptが動作しなくなってた件</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031559.html</link>
<description>Legacy Windows セキュリティ支援サイト (for Win2000 SP4/XP SP2)うちのブログの寄付募集ページいつの間にかJavaScriptが機能しなくなってる！Uncaught TypeError: Cannot read properties of undefined (reading ‘writeText’)何故か、SSLのサイトでしか使えなくなったら...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-22T12:00:12+09:00</dc:date>
<dc:subject>WebBrowser</dc:subject>
<content:encoded><![CDATA[<a  href="http://win2k.org/paypal.html" target="_blank" title="">Legacy Windows セキュリティ支援サイト (for Win2000 SP4/XP SP2)</a><br />うちのブログの寄付募集ページ<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/d/5/d5077075.png" width="408" height="121" border="0" alt="kihu" hspace="5" class="pict"><br />いつの間にかJavaScriptが機能しなくなってる！<br /><br /><table  width="404" border="1" style="font-size: x-small;"><tbody><tr><td>Uncaught TypeError: Cannot read properties of undefined (reading ‘writeText’)</td></tr></tbody></table>何故か、SSLのサイトでしか使えなくなったらしい。<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/5/85be52f5.png" width="408" height="101" border="0" alt="kihu2" hspace="5" class="pict"><br />保護はどうでもいいらしい（苦笑）」<br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031533.html">
<title>【Misskey】もふきー！始めました。開発日記 その8</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031533.html</link>
<description>Misskeyについて | Misskey.io開発8日目リサイズの問題が解決したので英語対応してみましたこれでよし･ω･【Misskey】もふきー！始めました。開発日記 その1【Misskey】もふきー！始めました。開発日記 その2【Misskey】もふきー！始めました。開発日記 その3【Misskey】もふ...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-21T12:00:47+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  href="https://misskey.io/about-misskey" target="_blank" title="">Misskeyについて | Misskey.io</a><br /><br />開発8日目<br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/2/9/29e383dc.png" width="373" height="539" border="0" alt="mofkey13" hspace="5" class="pict"><br />リサイズの問題が解決したので英語対応してみました<br /><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/1/9/19e32318.png" width="387" height="163" border="0" alt="mofkey14" hspace="5" class="pict"><br />これでよし･ω･<br /><br /><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その2</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031360.html">【Misskey】もふきー！始めました。開発日記 その3</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031367.html">【Misskey】もふきー！始めました。開発日記 その4</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031386.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その5<br /></a><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031430.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その6</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031386.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その5<br /></a><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031494.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その7<br /></a><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031494.html">
<title>【Misskey】もふきー！始めました。開発日記 その7</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031494.html</link>
<description>Misskeyについて | Misskey.io開発7日目とりあえず自分のプロフィール確認する機能を追加しました。バグ取り中 ･ω･【Misskey】もふきー！始めました。開発日記 その1【Misskey】もふきー！始めました。開発日記 その2【Misskey】もふきー！始めました。開発日記 その3【Miss...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-20T12:15:10+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://misskey.io/about-misskey">Misskeyについて | Misskey.io</a><br /><br />開発7日目<br /><img  class="pict" hspace="5" alt="mofkey12" border="0" height="297" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/0/40da3b78.png"><br />とりあえず自分のプロフィール確認する機能を追加しました。<br />バグ取り中 ･ω･<br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html">【Misskey】もふきー！始めました。開発日記 その2</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031360.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その3</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031367.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その4</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031386.html">【Misskey】もふきー！始めました。開発日記 その5<br /></a><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031430.html">【Misskey】もふきー！始めました。開発日記 その6<br /></a>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031430.html">
<title>【Misskey】もふきー！始めました。開発日記 その6</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031430.html</link>
<description>Misskeyについて | Misskey.io開発6日目テーマの変更機能を実装note先をPublic / home /followers で選べるようになりました。IE5.5だとうまく動かないのでデバッグ中 ･ω･blogcat がアニメーションするようになりました。インスタンスごとにAPI Tokenを設定する機能は実装完...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-19T12:00:08+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://misskey.io/about-misskey">Misskeyについて | Misskey.io</a><br /><br />開発6日目<br /><br /><img  class="pict" hspace="5" alt="mofkey11" border="0" height="166" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/1/7/17bbf162.png"><br />テーマの変更機能を実装<br /><br /><img  class="pict" hspace="5" alt="mofkey10" border="0" height="560" width="380" src="https://livedoor.blogimg.jp/blackwingcat/imgs/8/8/88d03453.png"><br />note先をPublic / home /followers で選べるようになりました。<br />IE5.5だとうまく動かないのでデバッグ中 ･ω･<br />blogcat がアニメーションするようになりました。<br /><br />インスタンスごとにAPI Tokenを設定する機能は実装完了<br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html">【Misskey】もふきー！始めました。開発日記 その2</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031360.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その3</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031367.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その4</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031386.html">【Misskey】もふきー！始めました。開発日記 その5<br /></a><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031386.html">
<title>【Misskey】もふきー！始めました。開発日記 その5</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031386.html</link>
<description>Misskeyについて | Misskey.io開発4日目送信処理実装に成功しました送信結果 | Misskey.ioうまく行きましたという訳で少し整形あと、APIキーをインスタンスごとに持たせないといけないので個別で保存するように修正。複数のインスタンスに１つのアプリでつぶやける初のWindow...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-18T12:00:59+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  href="https://misskey.io/about-misskey" target="_blank" title="">Misskeyについて | Misskey.io</a><br /><br />開発4日目<br /><br />送信処理実装に成功しました<br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/0/4/0426569f.png" width="386" height="496" border="0" alt="mofkey8" hspace="5" class="pict"><br /><a  href="https://misskey.io/notes/9ev5r2rjtf" target="_blank" title="">送信結果 | Misskey.io</a><br /><br />うまく行きました<br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/3/0/30a4cd33.png" width="408" height="359" border="0" alt="mofkey9" hspace="5" class="pict"><br />という訳で少し整形<br />あと、APIキーをインスタンスごとに持たせないといけないので<br />個別で保存するように修正。複数のインスタンスに１つのアプリでつぶやける初のWindows 95クライアントの爆誕 ･ω･<br /><br />公開はもう少し待ってね<br /><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その2</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031360.html">【Misskey】もふきー！始めました。開発日記 その3</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031367.html">【Misskey】もふきー！始めました。開発日記 その4</a><br /><br />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031367.html">
<title>【Misskey】もふきー！始めました。開発日記 その4</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031367.html</link>
<description>Misskeyについて | Misskey.io開発4日目送信処理実装してみたerror:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failureOpenSSL APIメモ（handshake failure） - ichou1のブログこれっぽいけど、そんな関数無い･ω･これ、1.0.x系の関数だよね？定義見たら...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-17T12:00:51+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  href="https://misskey.io/about-misskey" target="_blank" title="">Misskeyについて | Misskey.io</a><br /><br />開発4日目<br /><br />送信処理実装してみた<br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td><span  style="font-size: medium;">error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure</span><br  style="font-size: medium;"></td></tr></tbody></table><a  title="" target="_blank" href="https://work-in-progress.hatenablog.com/entry/2017/12/03/113552">OpenSSL APIメモ（handshake failure） - ichou1のブログ</a><br />これっぽいけど、そんな関数無い･ω･<br />これ、1.0.x系の関数だよね？<br /><br />定義見たらこうなってた ･ω･<br /><div>#&nbsp; define SSL_set_tlsext_host_name(s,name) \</div><div>SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name,(char *)name)</div><br /><table  style="font-size: x-small;" border="1" width="404"><tbody><tr><td><span  style="font-size: medium;">error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version</span></td></tr></tbody></table>ぐぬぬ…<br /><br />んで、TLS 1.0を TLS 1.2まで上げたら接続まではいった。<br />認証がうまくいかないみたいなので、次回の課題にする<br /><br /><img  class="pict" hspace="5" alt="mofkey7" border="0" height="395" width="380" src="https://livedoor.blogimg.jp/blackwingcat/imgs/b/c/bc89857e.png"><br />クリップボードやTABが機能しなかったので Ctrl+A/C/V/TABなどが機能するように修正<br />コンテキストメニューが出ないように修正<br /><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html" target="_blank" title="">【Misskey】もふきー！始めました。開発日記 その2</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031360.html">【Misskey】もふきー！始めました。開発日記 その3</a><br /><br /><br /><div  style="position: absolute; left: -27px; top: 961px;" id="gtx-trans"><div  class="gtx-trans-icon"></div></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031360.html">
<title>【Misskey】もふきー！始めました。開発日記 その3</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031360.html</link>
<description>Misskeyについて | Misskey.io開発3日目設定ファイルの読み書きに対応したよ簡単に見えるけど、html ファイルを書き換えて反映させたり、入力値を読み込んで vc++側に渡したりするのに苦労した ･ω･【Misskey】もふきー！始めました。開発日記 その1【Misskey】もふきー！始...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-16T12:00:43+09:00</dc:date>
<dc:subject>Twit/Chat/メッセ</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://misskey.io/about-misskey">Misskeyについて | Misskey.io</a><br /><br />開発3日目<br /><img  class="pict" hspace="5" alt="mofkey6" border="0" height="395" width="381" src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/5/557c79b4.png"><br />設定ファイルの読み書きに対応したよ<br />簡単に見えるけど、html ファイルを書き換えて反映させたり、<br />入力値を読み込んで vc++側に渡したりするのに苦労した ･ω･<br /><br /><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031207.html">【Misskey】もふきー！始めました。開発日記 その1</a><br /><a  title="" target="_blank" href="http://blog.livedoor.jp/blackwingcat/archives/2031302.html">【Misskey】もふきー！始めました。開発日記 その2</a><div  style="position: absolute; left: -95px; top: -20px;" id="gtx-trans"><div  class="gtx-trans-icon"></div></div>
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/blackwingcat/archives/2031314.html">
<title>【悲報】AV-TESTで満点を獲得してトップタイと紹介されたTrend MicroさんAV-Comparativesでは断トツの最下位の検出力なのが判明</title>
<link>http://blog.livedoor.jp/blackwingcat/archives/2031314.html</link>
<description>Windows標準のセキュリティソフト「Microsoft Defender」はシステム負荷が高すぎるとのテスト結果、ベストなセキュリティソフトは一体どれなのか？ - GIGAZINEGIGAZINE さんが、AV-TESTの結果を紹介して「18社のうち、Avast・Avira・Bitdefender・G DATA・Kaspersky・Trend M...</description>
<dc:creator>blackwingcat</dc:creator>
<dc:date>2023-05-15T12:00:35+09:00</dc:date>
<dc:subject>Security</dc:subject>
<content:encoded><![CDATA[<a  title="" target="_blank" href="https://gigazine.net/news/20230515-windows-microsoft-defender-highest-system-load/">Windows標準のセキュリティソフト「Microsoft Defender」はシステム負荷が高すぎるとのテスト結果、ベストなセキュリティソフトは一体どれなのか？ - GIGAZINE<br /></a><br />GIGAZINE さんが、AV-TESTの結果を紹介して「18社のうち、Avast・Avira・Bitdefender・G DATA・Kaspersky・Trend Microが18点満点を獲得してトップタイでした。また、K7 Computing・Malwarebytes・Protected.netもパフォーマンスで満点を獲得して次点となりました」「今回のテストではPC Maticがテスト中に20回もの誤検出と誤ブロックを起こし、ユーザビリティで6点中3点しか得られなかったため、他の2項目で満点を獲得したにもかかわらず総合評価で最低点に甘んじました」とか言ってます。<br /><br /><a  title="" target="_blank" href="https://techtalk.pcmatic.jp/?p=1565">PC Maticのパフォーマンスは競合他社よりも高い</a><br />通常のセキュリティソフトはブラックリスト方式なのに対して、PC Matic はホワイトリスト方式なので、未知のアプリケーションは既定でブロックする仕組みになっています。<br />これは誤ブロック、誤検出ではなくPC Matic の正しい動作です。<br /><br /><a  title="" target="_blank" href="https://pcmatic.jp/faq/app/16/">AV-Comparatives, AV-TESTなどの評価機関について / PC Matic FAQ</a><br />2011年に Comodoが AV-TEST が第三者機関としてちゃんと機能してるか保証がないから他の第三者機関に $50,000 支払って調査したいと申し出たことや、ESET が 2018年以降、AV-TEST の評価掲載を断った話は有名ですが特にAV-TESTの評価って微妙なんですよね。<br /><br /><a  title="" target="_blank" href="https://www.av-comparatives.org/tests/real-world-protection-test-feb-mar-2023-factsheet/">Real-World Protection Test Feb-Mar 2023 - Factsheet</a><br /><img  class="pict" hspace="5" alt="trendmic" border="0" height="206" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/4/7/479c27ce.png"><br /><br />現実世界の防御テスト、トレンドマイクロ製品は業界１の誤検出力を誇っています。さすがです･ω･<br /><br /><a  title="" target="_blank" href="https://www.av-comparatives.org/tests/malware-protection-test-march-2023/">Malware Protection Test March 2023 - AV-Comparatives</a><br /><img  class="pict" hspace="5" alt="trendmic3" border="0" height="261" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/5/9/594b8504.png"><br /><br />マルウェア防御に至っては断トツの最下位で、ウイルスバスターのはずがバスターされちゃってますね( &#728;ω&#728; )<br />Pandaや、AV-TEST で比較的優秀とされてるF-Secure や K7&nbsp; も散々です。<br /><br /><br /><a  title="" target="_blank" href="https://pcmatic.jp/pro/security/Detection_realscore.pdf">Virus Total Defection Real Score</a><br /><img  src="https://livedoor.blogimg.jp/blackwingcat/imgs/d/7/d7424e88.png" width="408" height="356" border="0" alt="trendmic4" hspace="5" class="pict"><br />VirusTotal を使用した未知のマルウェアに対する防御率<br />PC Matic / Kaspersky / Fortinet / Avast / ESET が優秀なのに対して、<br />TrendMicro は インドの K7やPandaと変わらないレベルですね ･ω･<br /><br />AV-TEST よりも、AV-Comparatives の結果が若干信頼できる証左ともいえるでしょうか<br />まぁ、少なくとも、 AV-TEST の結果はほんとに鵜呑みにしちゃダメですね<br /><br />最期のおまけがパフォーマンステスト<br /><br /><img  class="pict" hspace="5" alt="trendmic5" border="0" height="202" width="408" src="https://livedoor.blogimg.jp/blackwingcat/imgs/1/9/19332679.png"><br />これ、Windows Defender よりウイルスバスターの方が軽そうに見えますが<br />実は、対象アプリの初期スキャンが済んでない場合の処理時間を考慮したベンチマークだとTrendMicroの方がパフォーマンスが悪いのです。<br />トレンドマイクロ製品の特記すべきなのは、すべてのファイルのハッシュ情報をファイルとして保存するため、長年使えば使うほど、重くなりしまいにはPCの操作にも支障が出るほどのレベルになるという点です。インストール直後のテスト開始時の環境なんか正直なんの参考にもならないです(&#728;ω&#728;)<br /><br /><br /><br /><br />
]]>
</content:encoded>
</item>

</rdf:RDF>
