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などの質問はそれぞれの言語や開発環境スレで
862 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:36:25 ] >>846 おいおい。本気で言ってるのか?
863 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:36:42 ] >>860 それは分かるが、const_cast で代用できる。
864 名前:846 [2007/06/08(金) 15:38:15 ] >>862 本気だが?
865 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:39:56 ] 「本気」と書いて「マジ」と読む
866 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:41:02 ] >>859 単にCOMのシンタックス上非 const になってるだけで セマンティックス的には const な動作ならば、 適宜 const_cast 使えばいいと思うけど。 そのための const_cast でそ。 盲目的に「変更するから非 const」とか考えてると、 AddRef ひとつ呼べやしない。
867 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:42:16 ] >>863 mutable だと宣言する事と、 const_cast を使う事は、 表している意味合いとか読みやすさとかが変わってくるな。 どちらにしろ、使わざるを得ない状況自体が稀だが・・・。
868 名前:ららら mailto:sage [2007/06/08(金) 15:47:11 ] >>866 結論! COM は C++ と相性が悪い! のらー。 >> 845 > VBにconstなメソッドの概念がないからだと思う COM と IDispatch を混同してはいかんのらー。 COM は VB のためのものではないのらー。
869 名前:828 [2007/06/08(金) 16:13:14 ] >>849 ,>>858 ありがとうございました。 実現が難しそうだということがわかりましたので もう少し自分で考えた後、突破口が見つからなければあきらめたいと思います。
870 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 16:38:43 ] >>869 Windowsって、ファイルを開いたときに渡したパスを、覚えてないんだよね。 部屋の中に人がいるかどうかしか管理してなくて、 どの入り口から入ってきたのかは、ノーケアなんだ。 ファイルのハンドルから、ファイル名を知りたくて色々調べたけど、解決方法はなかった。 裏APIを使えば、オブジェクトの名前はわかるようなんだけど、ファイル名とは違うんだよね。 いっそのこと全プロセスに対してCreateProcessをフックしてしまい、 ハンドルに対するCreateFile時のファイル名を管理してしまおうかとも思ったけど、 そんな行儀の悪いことをするのはダメだよねぇ、ってことで諦めた。
871 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 16:56:05 ] 870のいう通りなら、 当該のドライブが使用中に、その解除作業やっても問題ないんじゃないか? だから「ドライブを使用していてもエラーなしでドライブを解除してしまう」のでは? これは想像だけど、ファイルを開くときにSubstされたドライブの場合、 正しいディスクのパスに変換してからファイルを開く、ぐらいの処理やっててもおかしくないと思うんだがな。
872 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 17:21:17 ] >>871 たぶんフィルタドライバを使って実現されていると思われ。
873 名前:869 [2007/06/08(金) 18:32:09 ] >>870 >>871 >>872 ありがとうございます。参考になりました
874 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 23:39:23 ] すいません、質問です。 WinXPにてsend,recvを使ってバイナリデータを送受信したいのですが、 バッファの大きさの上限(要するに、一回のsendや一回のrecvで送受信できるデータ量の上限)って、 何バイトでしょうか?? また、もし上限が無いのでしたら、 例えば1GByte程のデータを送受信する場合、 バッファサイズはどのぐらいが効率的なのでしょうか?? ご教授御願いいたしますm(。−_−。)m
875 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 23:47:22 ] >>874 WinScokのヘルプにバッファの設定について書いてあるんだから、 最低限確認してからにしろよ。
876 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 00:38:16 ] >>874 なんつーか、そもそもTCP/IPはバッファを大きくしてもそれだけの大きさをそのまま扱えるわけじゃないことも ご存知ないような。入門サイトでじっくりお勉強することをお勧めするですよ。
877 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:04:06 ] >>874 マジレスしたらここに聞きにくる以前の問題すぎて笑った
878 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:55:50 ] 質問です。 CreateCaretでシステムキャレット(長方形型)を使わせていただいていますが ウィンドウのステータスバーの上に被さって表示されてしまいます。 また、DrawEdgeで描いたウィンドウ内枠も上書きしてしまいます。 システムにお借りしたキャレットは描画のクリッピングなどはできないのでしょうか お聞かせください。
879 名前:878 mailto:sage [2007/06/09(土) 01:58:46 ] 要するにエディタ等のウィンドウをスクロールした際の キャレットが隠れるように見える挙動を実現したいのです。
880 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:19:01 ] ウィンドウをスクロールして、 キャレットが隠れなければならないタイミングで、 HideCaret を呼べばいいのでは。
881 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 12:17:40 ] 【政治】民主党、無年金障害者問題で法案提出 在日外国人らも救済 民主党は9日、国民年金の対象外か、任意加入の時期に未加入だったため、 障害基礎年金をもらえない無年金障害者すべてに 「障害福祉年金」を支給する法案を衆院に提出した。 今国会に与党が提出を予定している案では、 救済対象を元学生と専業主婦に限っているが、 民主党案は在日外国人や在外邦人も救済する手厚い内容だ。 給付額は、与党案では障害基礎年金の約6割にあたる月4万〜5万円だが、 民主党案は障害基礎年金と同額としている。 (06/09)朝日新聞 www.asahi.com/money/pension/news/TKY200406090286.html
882 名前:878 mailto:sage [2007/06/09(土) 16:11:21 ] >>880 手持ちの例で言えば↓このバイナリエディタStirlingのように ttp://www.vector.co.jp/soft/win95/util/se079072.html ウィンドウサイズを変更してキャレット上をステータスバーが覆うと 欠けたキャレットが点滅し続ける、このような挙動はどのように実現されているのか?ということです。
883 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:16:37 ] テキストエディタ(バイナリもそうだけど)系の奴って、 キャレットは自前描画するもんなんじゃなかったっけ? WM_TIMERつかまえて点滅、とか
884 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:20:01 ] 君のハートを捕まえて
885 名前:878 mailto:sage [2007/06/09(土) 16:27:03 ] >>883 そうなんですか。 同じくバイナリエディタの例で申し訳ないのですが↓のBZなんかは ttp://www.vector.co.jp/soft/win95/util/se032859.html >>882 のようなステータスバーがキャレット上を覆う時は シンプルにも完全にキャレットを非表示にする隠す挙動になっています。
886 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:41:26 ] ?どっちも同じじゃない?
887 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:43:33 ] >>885 ああごめんごめん、全部がそうってわけじゃないよ でも、あれ。俺はスターリンもBZも持ってんだけど、 試してみたらどっちも、キャレット一部が隠れてもちゃんと残りの一部が点滅してるな・・ バージョンが違うのかな?
888 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:46:58 ] バージョンが違いますね
889 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 16:50:51 ] そうですか、すんませんです
890 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 18:57:44 ] >>878 キャレットを所持するウィンドウとステータスバーの領域が重なってるんじゃないか? StirlingとBZもCreateCaretを使っている
891 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 20:05:43 ] フォルダの上で中央クリックしたら フォルダを新しいウインドウで開く ってのをできるソフトないかな?
892 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 20:07:43 ] ソフトウェア板に行ってね
893 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 20:16:25 ] >>891 それぐらい自分で作れカス
894 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 20:48:42 ] 実行ファイルのアイコンについてですが、WindowsXPのアイコンの表示方法には色々あると思います。 縮小版、並べて表示、一覧・・・ これらに対応して、違ったサイズのアイコンを表示したいのですが、どのようにすればいいのでしょうか?
895 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 20:52:26 ] アイコンは各種サイズを格納してる?
896 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:00:03 ] 一応48*48と32*32のアイコンをリソースに取り込んでます。 一番数字が若いやつが実行ファイルのアイコンになるっぽいので、48*48が標準で表示されています。 まぁ、どういう表示にしても48*48が表示されるのですが、これをなんとか・・・
897 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:01:20 ] 指定しろよ
898 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:03:52 ] >>896 その2つが別のアイコンとして扱われているのでは? Windowsでは1つのアイコンファイルやリソースが複数の大きさ・色数のアイコンを保持できる
899 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:07:23 ] どうやって指定するのでしょうか・・・(汗 VS2005を使用しているのですが、リソースビューでは特にいじる場所も見当たらなさそうな・・・
900 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:09:38 ] >>898 そうなんですか。ということは、今は2つのicoファイルが独立したリソースになってるって事ですね。 ちょっと色々試してみます。
901 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:11:04 ] >>899 なんだ、VSかい。EEじゃないよね? アイコンエディットしてるときに、いろいろメニューさがしてみそ
902 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:16:08 ] アイコンは、専用のソフトで一つの.icoにまとめてから、それを リソースとしてそのまま取り込むのが楽。 アイコンをまとめるソフトはフリーのやつでもわんさかあるから適当に選んで使うがよろし ちなみに俺は@iconってのを使ってる
903 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:17:14 ] @icon変換 とかで(ものはなんでもいいけど)ひとつのicoファイルが複数の サイズの違う画像を持つようするといいんじゃないかな
904 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:19:13 ] >>901 Visual Studio 2005です。リソースの追加>インポートを2回繰り返して2つのicoファイルを読み込んだのですが、 それではいけないんですよね・・・。色々メニュー見てみたり、右クリックしてみたりしたのですが いまいちどこでそういう変更が出来るのかまだわからないです・・・orz
905 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:19:56 ] >>902-903 ちょっと@iconを落としてきます!
906 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:25:27 ] @iconでマルチ画像保存したら出来ましたああああ;; ありがとうございます! というか、icoファイルって意外と高機能なんですね・・・ jpgとかgifの感覚で一つのファイルは一つの画像だと思ってました
907 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:34:07 ] なんでgifが一つなんだ?
908 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:37:19 ] 脳内
909 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 21:46:46 ] あ、gifは全然一つじゃないですね。アニメーションgifとか昔自分作ってたのに・・・orz
910 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 22:55:37 ] >>904 アイコンのエディット画面のイメージメニューだよ
911 名前:878 mailto:sage [2007/06/09(土) 22:58:18 ] >>887 BZはどうやら1行目だけは非表示にならずキャレットが点滅表示されるようです。 >>890 つまり、クライアント領域は別の子ウィンドウを張り付けるべきですかね? 今まで親ウィンドウに直書き描画しておりましたが・・・。
912 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:02:25 ] ここで聞くのが正しいか分からないけど、 VC++2005を使って「猫でも分かるプログラミング」を見て Win32APIの勉強をしているところなのですが、 プログラムに組み込みたいビットマップ画像や音楽ファイルって 生のまま(?)配布するソフトに一緒に入れておくしかないですか?
913 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:12:13 ] 自分の好きなようにしろよ。
914 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:15:20 ] >>913 自分の好きなようというか、 そのやり方しか知らなくて他に選択肢が無いから、 それ以外にやり方があるなら教えて下さい、という旨です。
915 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:16:09 ] 暗号化するなり、 1つのファイルにまとめるなり、 圧縮するなり、 リソースとして実行ファイルに埋め込むなり 好きにするなりよ
916 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:28:03 ] >>914 やり方なんていくらでもある その辺のPCゲームとか見れば、いくつか参考例もあるだろ? あと…あんまりWin32APIには関係ないかもな 俺はzlib使って固めて、独自ファイルヘッダくっつけて、 ついでに軽い暗号化かけて、チェック用のハッシュも持たせてやってる ファイル対象の圧縮・展開は専用ツール作って、 exeから使うときは展開ツールで利用してるクラスを使って簡単展開
917 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:33:52 ] この手の質問をする奴って、やり方は分かっているのに、 思いつく方法が面倒くさくて逃げ出したいから、 他人に何とかしてもらおうとしているだけなんだよね。
918 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 00:55:22 ] >>915 色々方法を教えて頂きありがとうございます、とても参考になりました。 まだレベルが低くて暗号化云々がアレなのでリソースとして 埋め込むという方法のやり方を調べてみます。 >>916 PC買って間もなくてプログラミング以外でほとんど使ったことが無かったので 一般的にどうするものなのか分からなかったです。 スレ違い&常識的なことを聞いていたらすいませんでした。 教えて頂いた方法はまだ技術的に追いつかないのでメモしておいて後で参考にさせて頂きます。 詳しく教えて頂きありがとうございました。 >>917 いえ、「猫でも〜」を挙げているように、まだ習い初めなのでガチでやり方が分かりませんでした。 ただ月曜が友人の誕生日で作ったプログラムを送りたくて 日程的に詰まっていたため自分で色々調べる時間が足りず、 ここで他人に何とかしてもらおうと思ったのは事実なので、 教えて君と不快に思われたらすいませんでした。
919 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 01:05:25 ] 誕生日プレゼントなら、happy99だよな ttp://www.geocities.jp/hiko_bae/happy99.html
920 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 15:29:27 ] すみません。質問です。 GetOpenFileNameで既存ファイルのフルパス文字列を受け取った場合、 ユーザーがキータイプしている可能性があるのでこれを統一化したいのですが良い方法はないでしょうか? フルパス文字列をキーとして内部保存し新たにOpenされた場合は相応の処理をしたいのです。 (ちなみに実際にファイル操作をするのはLinkした外部ライブラリです。) MBCS向けコーディングしていますが単純に_mbsnicmpをかませば大丈夫でしょうか? パスの命名規則があいまいで確信が持てません。。。
921 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 15:37:11 ] 日本語でおk
922 名前:920 mailto:sage [2007/06/10(日) 16:04:07 ] ああ、説明端折りすぎで意味不明でしたか。すみません 例えば、Abc.bmp、ABC.BMP、aBc.bmpなどは同じファイル(もっと長いファイル名でも)なので GetOpenFileNameで受け取ったパスをそのまま使ってキー探索するのは危険かと思いました で、Windowsシステムが認識しているパス名に統一する方法があればとお訊きした訳です 受け取ったパスでそのままSearchPathしてみたところ、どういう訳か入力した値そのものだったり エクスプローラ上のファイル名に置き換えられたり動作不定です(win2000)
923 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 16:07:30 ] > Abc.bmp、ABC.BMP、aBc.bmpなどは同じファイル ファイルシステムによっては違うファイルなのでは?
924 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 16:09:23 ] あなたは きょうしには むいていません。
925 名前:920 mailto:sage [2007/06/10(日) 16:23:49 ] >>923 え゜、、そうなんですか? 少なくともNTFS上では同じファイルとして扱われてますがFATやFAT32だと違うんでしょうか
926 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 16:38:46 ] なにを悩んでるのかがはっきりしないな。 特に >GetOpenFileNameで受け取ったパスをそのまま使ってキー探索するのは危険かと思いました の意味が分からない。 OPENFILENAME構造体のフラグで無効な文字や、無効なパスははじけるはず。 「危険」って何が「危険」なの?
927 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 16:40:14 ] NTFSもVATもFAT32も大文字と小文字を区別する。 大文字小文字区別しないのは昔のファイル名が8.3のFATじゃなかったっけ?
928 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 16:49:39 ] ファイルシステムとAPIとシェルの各層を区別しろや
929 名前:926 mailto:sage [2007/06/10(日) 16:52:53 ] >>920 すみません。よく読んだらちゃんとわかりました。 自分の読解力不足を嘆くばかりです。 www.ipa.go.jp/security/awareness/vendor/programming/b08_01_main.html ここを読んでおくとさらに悩めると思います。
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を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。