- 1 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 02:40:03 ]
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-10くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn2.microsoft.com/library/)の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで - Win32API質問箱 wiki wiki.livedoor.jp/program1/d/FrontPage 【前スレ】 61 ttp://pc11.2ch.net/test/read.cgi/tech/1199514664/
- 220 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 00:08:44 ]
- おい、許可がでちまったぞw
立てちまえよマジで 俺も知りたいし
- 221 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 00:11:11 ]
- >>219
レス検索してみた。 ちょっといくつか気になるワードでググってきます ノシ
- 222 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 00:11:43 ]
- 昔変換候補出すときにフックして常に変換結果を「ちんこ」にした事はある
IMEはバージョンに依存する動作が多くて面倒だった記憶が
- 223 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 01:06:45 ]
- ちんことか
- 224 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 01:42:49 ]
- ちんこウイルスか
- 225 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 04:33:22 ]
- URLDownloadToFileでダウンロードできるサイトと出来ないサイトがあるんだけど
何が原因だと思いますか? 別のPCで実行すると全てダウンロードできるんですがメインのPCで試してみると 出来るサイトと出来ないサイトが出てきてしまいます 色々試してみたけど規則性がまったく分からない コントロールパネルからインターネットオプションでプロキシを全てはずしても 同じ結果になってしまいます。他にもしかしたらこれが原因かもとかいうのありませんか?
- 226 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 04:39:04 ]
- hostsファイル?
- 227 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 05:36:48 ]
- 教えてください。
VC2008EEの環境でCreateWindowExが実行されないみたいです。 ビルドのエラーは出ていない、定義へ移動でwinuser.hに飛ぶ、 #pragma comment(lib,"user32.lib")をソースの頭に書いている状態です。 Debugでブレークポイント置いても実行可能コードは無いって言われます。 成功するRegisterClassExの後ろに置いてみても状況は変わりません。 まぬけなミスしてるんだと思うんだけど、どの様に直せば良いですか?
- 228 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 06:08:24 ]
- ソース晒せ
- 229 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 06:22:35 ]
- >>227
#pragma comment(lib,"user32.lib")を頭に書いてCreateWindowExで作ってみたけど 普通に動くよ。2008のProだけど >実行可能コードは無い プロジェクト作り直してみたら直ることがある
- 230 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 08:13:13 ]
- 横丁はパリのシャンゼリゼ〜
富士の白雪ぁフェニックス〜 だけど僕らのキョーちゃんは〜 豚足大好き、ブヒっ好き〜 キョーモト キョーモト きょうふのキョーーーーーーー(長いわ!)ーーーっちゃん
- 231 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 08:44:21 ]
- おれその頃のダウンタウン嫌いだったわ
意味不明な着ぐるみ系コントばっかりで
- 232 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 09:23:26 ]
- (もうええわ)
じゃないか
- 233 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 10:43:11 ]
- *.rcファイルはソースファイルなんでしょうか
それともリソースファイルなんでしょうか どちらに追加してもうまくいくようで気に入らないんですが
- 234 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 11:23:53 ]
- VC++の話?
ビルドするときにはファイル毎にどういうことを行うかという設定を見ており、 (その設定はファイルを追加したときに拡張子から標準の設定がなされる) ソリューションエクスプローラでどこのフォルダに入っているかということはビルドに一切関係ない。
- 235 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 12:21:37 ]
- POINT pos = { 0, 0 };
draw( "hello world", pos ); と書くところを一旦posを定義しないで直接POINT型変数をdrawに与えるにはどうしたらいいですか draw( "hello world", { 0, 0 } ); 的な…
- 236 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 12:55:57 ]
- C++ならコンストラクタに引数付けて渡すとか。
draw( "hello world", myCPOINT(0, 0)); Cならdrawの関数宣言を変えてしまうとか。 typedef void (*tdraw)(const char *, int x, int y); tdraw pdraw = (tdraw)draw; pdraw( "hello world", 0, 0); スタックの積まれ方に注意。(xとy逆だったかも)
- 237 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 12:57:33 ]
- 直接
((tdraw)draw)("hello world", 0, 0); でもいい。
- 238 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:00:24 ]
- そんな事するくらいなら最初のやり方の方がずっといい
- 239 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:05:17 ]
- うるせーボケ
どうしたらいいですか、ときたから答えたまで 後出しジャンケン野朗が
- 240 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:21:34 ]
- draw( "hello world", (POINT){ 0, 0 } );
- 241 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:23:51 ]
- すまん >>240 はコンパイラ依存だ
- 242 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:30:28 ]
- あきらかにhackぽい方法を教えるなよ
- 243 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:55:55 ]
- POINT f(int x, int y){POINT pt = {x,y}; return pt;}
draw("hello world",f(0,0));
- 244 名前:227 mailto:sage [2008/02/09(土) 13:59:44 ]
- ミスってる場所を外しているかもしれないので思い切って丸ごと上げました。
DLパスは名前の値です。 ttp://www.dotup.org/uploda/www.dotup.org0300.zip.html >>229 テストありがとう。基礎が出来てないだろう俺にはもう判りません…orz
- 245 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 14:25:53 ]
- >>244
CApplicationBase::GlobalWindowProc が大変なことになってるぞw CreateWindowExが失敗するのは、常にreturn S_OK;で処理しているため。 S_OK(=0)はCOMの正常終了値で使われる定義だが、 Window Procedureでは、正常終了値は大抵TRUE(=1)。 (※戻り値はメッセージにより異なる) Window Procedureの仕様は、下記参照。 msdn2.microsoft.com/en-us/library/ms633569(VS.85).aspx
- 246 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 14:29:21 ]
- CWindowBase::LocalWindowProcでCDXWndBase::LocalWindowProcの戻り値をreturnしてない
- 247 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 14:38:27 ]
- 質問です。
現在実行中のプロセスが、管理者権限を持っているかを調べるAPIを教えてください。 UACが有効になっているVistaで、Administratorsに入っているユーザーが、 「管理者として実行」をしているかを調べたい、というのが動機です。
- 248 名前:227 mailto:sage [2008/02/09(土) 14:49:57 ]
- >>245,246
さんきゅう。その辺良く判ってないので、勉強してくる。
- 249 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 15:18:44 ]
- >>247
IsUserAnAdminはそういう用途には使えないのかなぁ
- 250 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:09:55 ]
- Windowsx.hの便利さは異常
- 251 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:52:16 ]
- SIF_DISABLENOSCROLLの説明の使用不可にするってのはつまみとかを触れなくするだけ?
キースクロールでメッセージ投げる分には普通にスクロールするんだが
- 252 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 18:28:56 ]
- 天才現る
- 253 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:30:53 ]
- JPEGファイルの表示をするにはどうしたらいいですか
- 254 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:32:25 ]
- ブラウザで開く
- 255 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:33:07 ]
- WIN32APIの関数を使ってJPEGファイルの表示をするにはどうしたらいいですか
- 256 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:37:53 ]
- >>255
ShellExecute
- 257 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:41:35 ]
- BitBlt関数を使ってJPEGファイルの表示をするにはどうしたらいいですか
- 258 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:46:46 ]
- BitBlt(表示するDC, ... , ブラウザのDC, ...)
- 259 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:56:39 ]
- 外部プログラムを使わない方向でJPEGファイルを読み込んでBitBlt関数で表示するにはどうしたらいいですか
- 260 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:00:10 ]
- BitBlt(表示するDC, ... , 外部アプリのじゃないDC, ...)
- 261 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:06:36 ]
- その外部アプリのじゃないJPEGデータが展開されたDCはどうやって作成すればいいのですか
- 262 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:11:04 ]
- 漫才わろすw
- 263 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:17:41 ]
- GDI+とかOleLoadPictureとか
- 264 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:18:39 ]
- JPEGの仕様書を眺めてデコーダを作るといいよ
- 265 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:38:46 ]
- 離散コサイン変換
- 266 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:41:16 ]
- ハフマン符号
- 267 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:47:19 ]
- libjpegのソースに付随しているexample.cに
GLOBAL(int) read_JPEG_file (char * filename) あるからそこからスタートしてみたら? デコーダーの気にくわない部分があれば、 すっ飛ばしてstaticにリンクすればよい。
- 268 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:49:02 ]
- Win32APIスレだっつーの。
- 269 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:05:53 ]
- じゃあ BI_JPEG?
- 270 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:17:39 ]
- Win32APIスレだからGDI+を使った回答はは禁止
- 271 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:30:39 ]
- デスクトップユーティリティを作っているのですが、
フォーカスのあるプログラムに対してIMEによる入力が行われているときとそうでないときで動作を変えたいのですが、 他のプロセスのIME状態を取得するにはどんな方法がありますか? #IME入力中にマウスクリックで別のウィンドウをアクティブにしてから戻しても #漢字変換を続行できるのを見ると結構ややこしそうです。
- 272 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:59:12 ]
- はは禁止
- 273 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:12:15 ]
- はは禁止禁止
- 274 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:35:01 ]
- >>270
GDI+も広義のWin32のうちだろ。 もちろんネイティブC++ APIの方。
- 275 名前:デフォルトの名無しさん [2008/02/10(日) 00:48:03 ]
- >>274
はあ?
- 276 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 01:00:44 ]
- Win32APIの定義を教えてください
- 277 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 01:01:27 ]
- 自治厨答えろよ。
- 278 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 01:47:40 ]
- Win32 Application Programing Interface
- 279 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 01:57:59 ]
- ja.wikipedia.org/wiki/Graphics_Device_Interface
>Windows XPで、GDIはその後継であるC++ベースのサブシステムGDI+によって株を奪われた。 後継っつーならWin32APIスレの範疇にはいるんじゃないかと思う APIはApplicationProgramingInterfaceの略で文字通りの意味しかない 32ビットのWindows用だからWin32API 他にもPOSIXで策定してるPOSIXAPIとかいろいろある
- 280 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:01:26 ]
- そんなことは訊いていない
- 281 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:10:41 ]
- MS提供のAPIって事で良いよ。定義問題になると荒れるから。
- 282 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:50:20 ]
- >>281
つまり.NETもWin32APIって訳か
- 283 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 03:21:21 ]
- .NETは環境をWIN32に限定しないので残念ハズレ。
- 284 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 03:22:41 ]
- DirectXは?
- 285 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 03:56:28 ]
- DirectShowはSDKに統合されたからAPIの一部って事でいいんでね?
専用スレがあるのにここで聞いても誘導されるだけだと思うが
- 286 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 07:19:44 ]
- >>261
Susieプラグイン
- 287 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 07:43:54 ]
- NTでのWindowsサブシステムの標準APIと同等のAPI
- 288 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 09:03:12 ]
- COM周りでのも提供されてる微妙だな
- 289 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:05:08 ]
- Winsock, WinInet, WinHTTP, Theme, DWM, TSF, MSXML
- 290 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:44:43 ]
- >>288
日本語でおk
- 291 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:03:59 ]
- 数値を文字列に変換するAPIって何?
- 292 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:05:58 ]
- Shell Lightweight APIにもなんかあった気がするけど、wsprintf。
- 293 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:13:12 ]
- >>292
ありがとう。 頭文字が小文字なのでCランタイムの関数だと思ったら、user32.dllのAPIなのね。
- 294 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:41:09 ]
- >>282
ネイティブC/C++から満足に使えないからWin32 APIには入らないと俺は思う。 この立場からは.NETのUnmanaged Hosting APIはWin32。 でもこのスレにそんなこと質問してきたら、 それに関してはここよりわかる人がいそうな.NETのスレへ誘導するだろうけどね。
- 295 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:44:39 ]
- shlwapiはwnsprintfの方だな
- 296 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 16:43:12 ]
- MS提供のAPIなんて書いたら.NETどころかMFCやATLなんかもこのスレで扱う事になるだろ
- 297 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 16:44:28 ]
- このスレは技術レベル高い人が多いから、多少駆け込み寺みたいな
役割を求められても仕方がないのかも。 色んな質問が来るのは勲章だと思えばいいんじゃないかな。 広めに受け入れて、誘導できるものは誘導すればいい。
- 298 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 16:53:24 ]
- LoadImageで、パレットの違う2つの256色ビットマップから
DDBを作り、少しずつ色を変えながら色を出力すると、 表示されない色が出て、その色は2つのビットマップで違うのですが、 DDBにもパレットみたいなのがあるのでしょうか。
- 299 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 17:12:53 ]
- 少しずつ色を変えながら出力とは、
LoadImageでできたDDBを出力先にし、 FillRectで小さい四角を、 色、位置を少しずつ変えながら出力する感じです。 出力先は普通はCreateBitmap等で作ったDDBに すると思うんですが、実験という事でそれに出力しています。
- 300 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:32:01 ]
- ひとつのプロセスが開いているハンドル
(CloseHandleで閉じるハンドル・特にファイルハンドル) を列挙する方法はありませんか? GetProcessHandleCountっていうのを見つけたのですが、これだと数しかわかりません。
- 301 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:34:50 ]
- 高いのは技術レベルってより、知識量レベルだろ。その知識を生かして
どうプログラムに落とすかがプログラマの真価が問われる。このスレじゃ、それはわからん。
- 302 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:44:10 ]
- 突然マの真価とか語られても・・・それこそマ板でやれ
- 303 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 19:12:22 ]
- 297に同意
>DDBにもパレットみたいなのがあるのでしょうか。 あるよ。 SelectPaletteやCreatePaletteなどのAPIはDDBでも使用可能
- 304 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:02:29 ]
- xpでVS2008express editionでスクリーンセーバー作ろうとしたら
コンパイルできるのに起動時にエラーがでるのだが。 ちなみにsystem32以下のuser32.dllのタイムスタンプは2004年8月4日になってる。 わかる? エラーメッセージ 「エントリポイントが見つかりません プロシージャエントリポイントChangeWindowMessageFilterがダイナミックリンクライブラリUSER32.dllから見つかりませんでした」 ソース #include <windows.h> #include <scrnsave.h> #pragma comment(lib, "scrnsavw.lib") #pragma comment(lib, "comctl32.lib") LRESULT WINAPI ScreenSaverProcW(HWND hWnd, UINT msg,WPARAM wParam, LPARAM lParam) { return DefScreenSaverProc(hWnd, msg, wParam, lParam); } BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) { return TRUE; } BOOL WINAPI RegisterDialogClasses(HANDLE hInst) { return TRUE; }
- 305 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:09:33 ]
- ChangeWindowMessageFilterはVistaにしかない
- 306 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:12:56 ]
- あれ?どこかのスレでも同じ質問みたな
- 307 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:13:57 ]
- 付属ライブラリがVista専用かよ
- 308 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:19:33 ]
- targetver.h 書き換えろよ。デフォルトがVistaになってるぜ。
- 309 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:26:04 ]
- >>306
VS2008スレで見たね
- 310 名前:304 mailto:sage [2008/02/10(日) 21:07:55 ]
- なんだ、2008はほとんどvista用か
2005入れ直すかな 他のスレに同じことやってる奴がいてわらた みんなthx
- 311 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 21:10:53 ]
- そして無視される308お陀仏……。
- 312 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 21:32:12 ]
- 他のスレでも同じように2005を入れなおそうという奴がいるのか
それはちょっと面白いな
- 313 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 01:19:48 ]
- VS2008でセィバーだが、こっちにも俺と同じヤツがいたwww
これ、MSのどっかにねじ込んでおけばいいんだよな?
- 314 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 02:03:00 ]
- タスクメニューのアイコンを右クリックすると、メニューが出るプログラムを作成しています。
一応完成したのですが、アイコンをクリックした時に 2回目のクリックからタスクバーのプロパティーまで表示されてしまいます。 マウスのイベントがタスクバーまで伝播しているようなのですが、 この回避方法はどうやればいいのでしょうか? 誰かご教授ください。
- 315 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 02:11:15 ]
- 貴様の間違ったコードを正しくすればいい。
正しく書いていればそのような挙動はしない。
- 316 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 03:03:52 ]
- こんばんは
早急に教えてください。 malloc() はどのDLLのエクスポート関数でしょうか?
- 317 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 03:07:02 ]
- msvcrt20.dllだな
- 318 名前:316 mailto:sage [2008/02/11(月) 03:11:10 ]
- >>317
ありがとう
- 319 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 03:17:57 ]
- ざくざくでてくるね。
crtdll.dll msvcrt.dll msvcrt40.dll mscvr70.dll mscvr71.dll mscvr80.dll mscvr90.dll mscvr71d.dll mscvr80d.dll mscvr90d.dll cc3250mt.dll (Borland) cygwin1.dll
- 320 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 03:26:49 ]
- ほとんどバージョンかデバッグ版かどうかの違いだな。
|

|