<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>shohei blog &#187; 開発メモ</title>
	<atom:link href="http://www.bak-net.com/blog/category/%e9%96%8b%e7%99%ba%e3%83%a1%e3%83%a2/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bak-net.com/blog</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Wed, 25 Aug 2010 04:39:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>コモンダイアログを開いたときに縮小版にしたい</title>
		<link>http://www.bak-net.com/blog/2010/01/19/%e3%82%b3%e3%83%a2%e3%83%b3%e3%83%80%e3%82%a4%e3%82%a2%e3%83%ad%e3%82%b0%e3%82%92%e9%96%8b%e3%81%84%e3%81%9f%e3%81%a8%e3%81%8d%e3%81%ab%e7%b8%ae%e5%b0%8f%e7%89%88%e3%81%ab%e3%81%97%e3%81%9f%e3%81%84/</link>
		<comments>http://www.bak-net.com/blog/2010/01/19/%e3%82%b3%e3%83%a2%e3%83%b3%e3%83%80%e3%82%a4%e3%82%a2%e3%83%ad%e3%82%b0%e3%82%92%e9%96%8b%e3%81%84%e3%81%9f%e3%81%a8%e3%81%8d%e3%81%ab%e7%b8%ae%e5%b0%8f%e7%89%88%e3%81%ab%e3%81%97%e3%81%9f%e3%81%84/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 03:07:44 +0000</pubDate>
		<dc:creator>Shohei</dc:creator>
				<category><![CDATA[開発メモ]]></category>

		<guid isPermaLink="false">http://www.bak-net.com/blog/?p=11</guid>
		<description><![CDATA[職場で事情によりネットショップ・オーナーというソフトを使うことがあるんですけど、画像選択するコモンダイアログがいつもアイコンでしか開かない。Windowsって不便です。
でも毎回縮小表示にするのが面倒なので、何とかしたいと思った。そもそもコモンダイアログだろうとSendMessageでなんとか出来るとだろうと思い検索。すると既に公開されている方がいた！それでソースをそのままコピーして、利用するWindows2003とネットショップ・オーナーでも動作するように変更しただけです。ソール公開しているくまっちさんに感謝。
ここにバイナリ置いてきますね。主に自分のため。
以下改変したソース
#uselib "user32.dll"
#cfunc FindWindow "FindWindowA" sptr, sptr
#cfunc FindWindowEx "FindWindowExA" int, int, sptr, sptr, 

#define WM_COMMAND 0x0111
#define THUMBNAIL_XP 0x702d //XP
#define THUMBNAIL_W2K 0x7031 //W2K

screen 0,200,100,1
title "縮小版にしちゃう"

a = sysinfo(0)
;mes a
b = instr(a,0,"NT")
c = instr(a,0,"5.0")
d = instr(a,0,"5.1")

if(b &#62; 0){
	mes "NT系"
}else{
	mes "NT系以外"
	mes "利用できません。"
stop
}

if( c &#62; 0){
	mes "Win 2K"
	THUMBNAIL = THUMBNAIL_W2K
}else{
if( d &#62; 0){
	mes "Win Xp"
	THUMBNAIL = THUMBNAIL_XP
}else{
	mes "Vista?"
	//mes "利用できません。"
	//stop 別にとめない
	THUMBNAIL = [...]]]></description>
			<content:encoded><![CDATA[<p>職場で事情によりネットショップ・オーナーというソフトを使うことがあるんですけど、画像選択するコモンダイアログがいつもアイコンでしか開かない。Windowsって不便です。</p>
<p>でも毎回縮小表示にするのが面倒なので、何とかしたいと思った。そもそもコモンダイアログだろうとSendMessageでなんとか出来るとだろうと思い検索。すると既に<a href="http://blog.kumacchi.com/2007/05/post_107.html">公開されている方</a>がいた！それでソースをそのままコピーして、利用するWindows2003とネットショップ・オーナーでも動作するように変更しただけです。ソール公開しているくまっちさんに感謝。</p>
<p><a href="http://www.bak-net.com/blog/wp-content/uploads/SBAN2.zip">ここにバイナリ置いてきますね。</a>主に自分のため。</p>
<p>以下改変したソース</p>
<pre>#uselib "user32.dll"
#cfunc FindWindow "FindWindowA" sptr, sptr
#cfunc FindWindowEx "FindWindowExA" int, int, sptr, sptr, 

#define WM_COMMAND 0x0111
#define THUMBNAIL_XP 0x702d //XP
#define THUMBNAIL_W2K 0x7031 //W2K

screen 0,200,100,1
title "縮小版にしちゃう"

a = sysinfo(0)
;mes a
b = instr(a,0,"NT")
c = instr(a,0,"5.0")
d = instr(a,0,"5.1")

if(b &gt; 0){
	mes "NT系"
}else{
	mes "NT系以外"
	mes "利用できません。"
stop
}

if( c &gt; 0){
	mes "Win 2K"
	THUMBNAIL = THUMBNAIL_W2K
}else{
if( d &gt; 0){
	mes "Win Xp"
	THUMBNAIL = THUMBNAIL_XP
}else{
	mes "Vista?"
	//mes "利用できません。"
	//stop 別にとめない
	THUMBNAIL = THUMBNAIL_XP
	}
}

while(1)
hwnd1 = FindWindow("#32770", "イメージソースの選択")

if(hwnd1 == 0){
	hwnd1 = FindWindow("#32770", "別名で保存")
}

if(hwnd1 == 0){
	hwnd1 = FindWindow("#32770", "名前を付けて保存")
}

if(hwnd1 == 0){
	hwnd1 = FindWindow("#32770", "画像選択")	//これを追加した
}

hwnd2 = FindWindowEx(hwnd1, 0, "SHELLDLL_DefView",0 )

if(hwnd2){
	sendmsg hwnd2,WM_COMMAND,THUMBNAIL,0
	while(FindWindowEx(hwnd1, 0, "SHELLDLL_DefView",0 ))
		wait(50)
	wend
}
wait(50)
wend
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.bak-net.com/blog/2010/01/19/%e3%82%b3%e3%83%a2%e3%83%b3%e3%83%80%e3%82%a4%e3%82%a2%e3%83%ad%e3%82%b0%e3%82%92%e9%96%8b%e3%81%84%e3%81%9f%e3%81%a8%e3%81%8d%e3%81%ab%e7%b8%ae%e5%b0%8f%e7%89%88%e3%81%ab%e3%81%97%e3%81%9f%e3%81%84/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
