[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 06/22 14:14 / Filesize : 234 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Win32API質問箱 Build53



1 名前:デフォルトの名無しさん [2007/05/11(金) 20:27:08 ]
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。

過去スレ、関連リンクは>>2-5くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

930 名前:920 mailto:sage [2007/06/10(日) 17:08:36 ]
説明下手ですいません。かなりアホなこと訊いている気がしてきました

>>926
既にOpen済みかそうでないかを判定する手段として
Open済みのファイルのフルパスを保存し、一致検索しようと考ました
新たにOpenされたファイルなら前処理を行った後にライブラリにOpen要求を出します
GetOpenFileNameでは存在するValidなパスしか受け付けないように設定しています

>>927
不安になったので今デスクトップ上で上記3ファイルを新規作成してみましたが
最初の1個以外は同じファイル名だと怒られます(XP、NTFS)


931 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 17:17:52 ]
>>930
> 不安になったので今デスクトップ上で上記3ファイルを新規作成してみましたが
> 最初の1個以外は同じファイル名だと怒られます(XP、NTFS)
それはWindowsのファイルシステムドライバが過去の互換性に縛られるせい。

932 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 17:19:39 ]
GetVolumeInformation
ttp://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpfileio/html/_win32_getvolumeinformation.asp
FS_CASE_IS_PRESERVED
ファイルシステムは、ディスクにファイル名を記録するときに、大文字と小文字を区別して保存します。
FS_CASE_SENSITIVE
ファイルシステムは、ファイル名の大文字と小文字の区別をサポートしています。

933 名前:920 mailto:sage [2007/06/10(日) 17:32:51 ]
皆様、ありがとうございます
なるほど。基本的な理解が足りていなかったようです。
具体的な解決法が未だ見えませんが教えてもらった情報を元に
これから色々テストしてきます

934 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 17:36:45 ]
がんばれ

935 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 17:48:12 ]
>>920
与えられたパスをFindFirstFileに渡す。
これで大文字/小文字も含めて正確なパスが得られるよ。

俺はGetModuleFileNameで得られたパス名を修正するのに使っている。

936 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 18:15:31 ]
がんばるな

937 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 18:25:55 ]
CorrectFileNameEx

938 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 19:11:23 ]
>>937
くわしく。



939 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 19:15:53 ]
CorrectFileNameEx に一致するページは見つかりませんでした。

940 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 19:35:05 ]
次スレたてられなかった

941 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:09:01 ]
>>940
>980 くらいでちょうどよい。まだ、早すぎ。

942 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:17:01 ]
>>980に期待

943 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:27:30 ]
GetCanonicalFileName

944 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:32:03 ]
>>943
詳しく

945 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:38:41 ]
>>944
詳しく

946 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:43:09 ]
>>945
悔しく

947 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:54:28 ]
>>943
つまんね

948 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 22:22:49 ]
>>947
ねんまつ



949 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 23:08:34 ]
ファイルハンドルを開きっぱなしでそのファイルを削除しようとすると、
「ファイルまたはフォルダの削除エラー」がでます。
ファイルが削除されるタイミングを知ることができれば、
ファイルハンドルを解放しようと思います。
タイミングを知る方法を教えてください。

950 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 23:12:43 ]
初めから削除権与えたら駄目なん?

951 名前:949 mailto:sage [2007/06/10(日) 23:27:14 ]
>> 950
ありがとうございます。
それで行けそうです。
めちゃ助かりました!

952 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 23:28:25 ]
>>949
試したことはないけど便宜的ロックで何とかならない?
SMBとかで使ってる奴。

953 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 06:14:19 ]
スーパーマリオブラザーズで使われているのはロックではありません。

954 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 08:40:08 ]
DPMSで画面の電源を切るにはどうするですか?

955 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 23:05:52 ]
>>954
KernelIoControlでIOCTL_HAL_DDIとかじゃね?

956 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 00:02:21 ]
ochinchin.h を omanko.cpp に include したのに

957 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 00:15:29 ]
includeはinsertじゃないよバーカ

958 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 00:26:02 ]
僕バ(略



959 名前:デフォルトの名無しさん [2007/06/12(火) 09:33:04 ]
スレ違いかと思いますが、他に適当なスレが見当たらなかったので
ここでお伺いさせてください。

Windows2000で
Shell_NotifyIcon()でシステムトレイに表示できるアイコンは
16色らしいのですが、この16色は16種類の色なのでしょうか?
それとも決められた16色なのでしょうか?

960 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 14:04:17 ]
2kまでシステムカラー16色限定。
XP以後フルカラー+アルファが使えるようになった。

でもMEで256色アイコンが色化け無しでトレイにあるのを見たことあるんだよな・・・

961 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 14:06:32 ]
IEというか Comctrl32 のバージョン依存じゃね?

962 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 14:15:44 ]
ttp://msdn2.microsoft.com/en-us/library/ms538121.aspx
hIcon
 Windows 95, Windows 98, and Microsoft Windows NT 4.0 support icons of up to 4 bits per pixel (BPP).
Windows Millennium Edition (Windows Me) and Windows 2000 support icons of a color depth up to the current display mode.
Windows XP supports icons of up to 32 BPP.

963 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 14:57:49 ]
そのアイコンの話じゃねーんだよバーヤ

964 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 15:02:19 ]
そのアイコンの話なーんだよバーカ

965 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 15:40:27 ]
扱うのはそのアイコンだが、今回の話はそれとは違う部分の制限だろ

966 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 16:05:06 ]
いや、>>962の説明で正しい。

967 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 16:21:31 ]
元の質問者は16色と言ってるんだけど、
つまりこれは16色の環境で実行したってことなの?

968 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 16:32:16 ]
>>967
>16色らしいのですが
っつーくらいだから、試してはいないとふんだ。



969 名前:デフォルトの名無しさん [2007/06/12(火) 16:51:50 ]
すいません。元の質問者です。

試しました。
オレンジベースのグラデーションで16色アイコンをShell_NotifyIcon()で
表示したのですが、XP上ではイメージどおりに表示されたのですが
2Kに持っていったらグレースケール色になってしまったのです。
ググったら2Kは16色だよ。との情報を得ました。

そしてその16色とは固定の16色なのか16種類なのかとの疑問となり、
グレーになる原因を求めてこのスレにお邪魔させていただきました。
>>962さんの情報では
2Kはデスクトップのカラービットに依存すると解釈したのですが
であれば、32bitに設定していますので普通に表示されるはずだと
思うのですが・・・また解からなくなってしまいました。

970 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:03:03 ]
普通にShell_NotifyIconだけだと16色にしかならないから
XP未満で256色なのはタスクトレイのウィンドウをフックしてイメージリストを書き換えてるんだよ。
exploer.exeにパッチとか常駐ソフトで変更てのもあるが汎用性がない。

971 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:06:47 ]
グレースケールだとシステム標準じゃないような、、、って
白、明灰、暗灰、黒の4段階ならシステム16色だな。

972 名前:デフォルトの名無しさん [2007/06/12(火) 17:13:22 ]
元の質問者です。

すると
Shell_NotifyIcon()だけを素直に使った場合、
>>960のシステムカラー16色という制限を受けるって
ことですね。

973 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:33:38 ]
16x16ドット16色で見やすいアイコンを作るのもプログラマの腕の見せ所です

974 名前:デフォルトの名無しさん [2007/06/12(火) 17:42:31 ]
なるほどシステムカラーを組み合わせて
遠目からオレンジっぽく見えるようにします。

それにしても>>962さんの紹介してくれたMSの説明は
フックしてイメージリストを書き換えるのが前提の
説明なのでしょうか。
英語が苦手なので全部を解読するのは厳しいですが、
それもプログラマの腕の見せ所ですものね。

975 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:48:12 ]
流れとは関係ないかも知れないが、
うちの win98 では、トレイ上ではないが、8ビットカラーの 32x32, 16x16 の
アイコンが表示されている。写真から xpadie かなんかで減色して作ったもの。

976 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:51:12 ]
休止状態、スタンバイ、スリープから復帰したことを知ることって出来ないですか?

977 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 17:54:48 ]
はい。

978 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:03:40 ]
>>976
ttp://www.winapi-database.com/Message/WM/WM_POWERBROADCAST.html



979 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:06:19 ]
>>976
出来ない が true か → いいえ
出来ない が false か → はい


980 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:07:43 ]
>>976
質問の仕方が悪い。

休止状態、スタンバイ、スリープから復帰したことを知る方法がありますか。
あれば、その方法を教えてください。

とか言えばいいのよ。

本当に知りたいことが、方法の有無だけで、
あるなら自分で調べるよ、という人もいるからね。

981 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:14:25 ]
>>978
thx
>>980
行間が読めない馬鹿は死ねばいいと思います

982 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:24:12 ]
>>978は余計なことをしたな

983 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:26:53 ]
一行だから行間はない

984 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:27:46 ]
>>980の脳が腐ってるだけ。

985 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:45:00 ]
>976が赤の他人に甘えてるだけ。
行間読むなんて、どこまでできても結局読んだ奴の推測にすぎない。

986 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:46:52 ]
もう>>983の勝ちでいいよ

987 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:46:56 ]
お前らそんなんじゃコンビニにすら行けないな。

988 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:49:13 ]
>>985がアホ過ぎるwよくそんなんで生活出来てるなwwwwwww



989 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:51:59 ]
質問の回答を聞きに来たのか
煽りに来たのか
どっちだ

990 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:53:37 ]
あんな質問してる方がアホ過ぎだ

991 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:54:40 ]
一連のレスで何が一番ひどいかって言ったら、>>981だろう。
こういうやつにまともなレスをしてはいけない。
しかも自演までしてるし。

992 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:56:29 ]
「ぼくのしつもんに すなおに こたえないやつは わるいやつ」

993 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 18:56:49 ]
じゃあ一番のボケは>>985ってことで

994 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:12:25 ]
>>988
対面リアルタイムでのやりとりは、この文字だけのやりとりとは情報量が格段に違うんだよ。

995 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:15:25 ]
>>980くらいでカチンとくるやつは
この板でちゃんとした回答はもらえないだろうなぁ

996 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:19:16 ]
社会でも駄目だろ
文章力も無いのに行間読めとか言う奴は

997 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:22:12 ]
課長、行間読んでます?

998 名前:デフォルトの名無しさん [2007/06/12(火) 19:28:04 ]
>>981
お前が死ねば?




999 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:35:08 ]
ぬるぽ

1000 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 19:37:04 ]
行間はここに↓

1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<234KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef