1 名前:デフォルトの名無しさん [2019/02/27(水) 15:09:08.64 ID:6ExXwgQU.net] Win32APIについての質問はこちらへどうぞ。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。 英語版( msdn.microsoft.com/en-us/library/ )の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで ■過去スレ Win32API質問箱 Build124 mevius.5ch.net/test/read.cgi/tech/1510395780/ Win32API質問箱 Build123 mevius.2ch.net/test/read.cgi/tech/1475897582/ Win32API質問箱 Build122 echo.2ch.net/test/read.cgi/tech/1451988219/ Win32API質問箱 Build121 echo.2ch.net/test/read.cgi/tech/1438695290/ Win32API質問箱 Build120 echo.2ch.net/test/read.cgi/tech/1428570962/ ■関連スレ Visual Studio 2019 mevius.5ch.net/test/read.cgi/tech/1548765663/ Visual Studio 2017 Part6 mevius.5ch.net/test/read.cgi/tech/1528645068/ 【C++】 DirectX初心者質問スレ Part41 【C】 mevius.5ch.net/test/read.cgi/tech/1521786252/
116 名前:デフォルトの名無しさん mailto:sage [2019/05/05(日) 15:56:15.83 ID:HdQlTZxY.net] その程度で誤動作するようなソフトはもとからバグまみれなんじゃないか?
117 名前:さまよえる蟻人間 mailto:sage [2019/05/05(日) 17:33:49.39 ID:BlnSuy3y.net] これすごいよ。試してみてね。 【ソフト名】vista2xp 【URL】github.com/katahiromz/vista2xp 【説明】Vista/7/10向けのアプリをXP向けアプリに変換できるかもしれないソフト
118 名前:デフォルトの名無しさん mailto:sage [2019/05/05(日) 17:57:18.06 ID:3Dri8dsV.net] >>116 最近気にも留めてかなかったけど とうとうスパム業者のレベルにまで落ちぶれたんだな片山
119 名前:さまよえる蟻人間 mailto:sage [2019/05/05(日) 18:58:37.17 ID:BlnSuy3y.net] archive.2ch-ranking.net/tech/1407006123.html#97 ここにXPで動かしたいという要望があったから書き込んだのに。。。
120 名前:さまよえる蟻人間 mailto:sage [2019/05/05(日) 20:25:34.20 ID:KHPeL5hx.net] 凄さわかります?
121 名前:デフォルトの名無しさん [2019/05/06(月) 18:57:39.39 ID:o0+2Jvom.net] ヤバさ10000倍
122 名前:デフォルトの名無しさん mailto:sage [2019/05/06(月) 19:41:50.63 ID:lfqhRR/k.net] 5年前のレスなのに・・・・ヤバイ
123 名前:98 [2019/05/08(水) 19:24:40.51 ID:6PpqmmLA.net] マニフェストで、uiAccess='true'とし、オレオレ証明書で署名すると、 自アプリに管理者権限がなくても、 管理者権限ありの他アプリがアクティブな時にもマウスのフックが効くようになりました。 (結果的にはスレ違いだったか?)
124 名前:デフォルトの名無しさん mailto:sage [2019/05/08(水) 19:58:08.02 ID:h6vLlN0g.net] >>122 なかなかやるじゃないの
125 名前:デフォルトの名無しさん mailto:sage [2019/05/08(水) 22:35:29.55 ID:VmC21Scz.net] へー
126 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 09:59:35.10 ID:q0mRunzJ.net] リストコントロールをLVS_OWNERDATAで仮想リストビューとして使う際、 LVS_EX_FULLROWSELECTを付けていないと、 マウスで先頭からガーっと範囲選択を広げながらスクロールさせてるときに どんどん重くなっていくんだけど、これは防ぎようがないんですかね。 LVS_EX_FULLROWSELECTを付けるとそんなことになはならないです。 確かに、LVS_EX_FULLROWSELECTを付けてないときは、 選択範囲内のY座標に含まれるすべてのアイテムに対して、 先頭カラムの文字の長さを見なければいけないのはわかるんだけど。
127 名前:デフォルトの名無しさん [2019/05/16(木) 11:56:46.64 ID:Ox4fjiQE.net] やり方かえろ そんなインターフェースが万一速くなってもだれも喜ばない
128 名前:デフォルトの名無しさん [2019/05/16(木) 14:14:30.40 ID:ehYc/git.net] 元号の構造体が「明治、大正、昭和、平成」の4択しか無かったとかいうアホな仕様もアホかも知れないが(Windows31の頃か?) 改元が決まってから今年に入るまで完全放置プレイだったってのも何だかなあ ↓ その構造体の修正も、その単体パッチに含まれてるのよ
129 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 15:50:11.52 ID:U2hw1vcW.net] >>125 完全に横で関係ない話だけど、仮想リストビューって名称が取っつきにくくて分かりにくいと思ってた。 LVS_OWNERDATAって名前付けてくれてマジありがとうだった思い出。
130 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 09:22:15.27 ID:WU6BNfa1.net] >>126 ユーザーから指摘された挙動です。 マウスで範囲選択できるリストビューというのは普通だし、 項目が多いから仮想リストにするのも別に間違ってないはずだし、 その二つを組み合わせたら駄目という暗黙ルールなんですかね。
131 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 09:46:25.79 ID:LE8qq7Xv.net] >>129 2個目〜5個目を選択するとして 2個目を選択した状態で5個目をShift+クリックじゃダメなん?
132 名前:デフォルトの名無しさん [2019/05/17(金) 11:45:00.31 ID:CPhGekQ/.net] Edge、FirefoxなどWebブラウザのJavascriptが新元号の令和に対応してない。 なぜかIE11は令和に対応済み。
133 名前:デフォルトの名無しさん mailto:sage [2019/05/23(木) 10:54:32.01 ID:O47OnyW4.net] >>130 もちろんその操作は理解していますが、回避方法の質問ではなく、 ユーザーが範囲選択しただけで処理が極端に重くなるというのが疑問でした。 処理が遅くならないようにするためのLVS_OWNERDATAだと思ってたので。
134 名前:デフォルトの名無しさん mailto:sage [2019/05/23(木) 12:16:50.69 ID:U0EOYL7g.net] LVN_GETDISPINFOの処理にミスはないの? LVS_OWNERDATAとLVS_EX_FULLROWSELECTどっちも使わないときの 処理速度も遅いんなら仕様だと思うけどね
135 名前:デフォルトの名無しさん mailto:sage [2019/05/28(火) 12:39:31.20 ID:V7/pYf2g.net] >>133 以下のような、連番を表示するだけの簡単なテストでも発生します。 MFCのコードだけど、結局はAPIなので原理は同じはず。 IDC_LIST1もIDC_LIST2も、ダイアログエディタ上で置いたリストコントロールで、 リスト関連のスタイルはLVS_OWNERDATAを付けただけ。 IDC_LIST1のほうはマウスで選択範囲を広げていくとどんどん遅くなります。 LVS_EX_FULLROWSELECTを付けたIDC_LIST2のほうは全く遅くなりません。 m_list
136 名前:1.SetExtendedStyle(m_list1.GetExtendedStyle() | LVS_EX_DOUBLEBUFFER); m_list1.InsertColumn(0, _T("カラム"), LVCFMT_LEFT, 100); m_list1.SetItemCountEx(10000); m_list2.SetExtendedStyle(m_list2.GetExtendedStyle() | LVS_EX_DOUBLEBUFFER | LVS_EX_FULLROWSELECT); m_list2.InsertColumn(0, _T("カラム"), LVCFMT_LEFT, 100); m_list2.SetItemCountEx(10000); LVN_GETDISPINFOハンドラ { NMLVDISPINFO *pDispInfo = reinterpret_cast<NMLVDISPINFO*>(pNMHDR); LVITEM* pItem = &pDispInfo->item; if (pItem->mask & LVIF_TEXT) { CString strItem; strItem.Format(_T("%d"), pItem->iItem); _tcsncpy_s(pItem->pszText, pItem->cchTextMax, strItem, _TRUNCATE); } *pResult = 0; } [] [ここ壊れてます]
137 名前:デフォルトの名無しさん [2019/05/28(火) 12:51:33.37 ID:EOiH5L82.net] マンコが臭い
138 名前:デフォルトの名無しさん [2019/06/04(火) 08:10:51.94 ID:HNHYFj8Q.net] デスクトップで右クリメニューの「ディスプレイ設定」→ ディスプレイ詳細設定→ ディスプレイ1のアダプターのプロパティを表示します→ 専用ビデオメモリ: 128MB ↑この値を取得したいんですけど方法分る人居ますか? Win32APIで無理なら他の方法でもいいので。
139 名前:蟻人間 mailto:sage [2019/06/04(火) 09:43:34.64 ID:RcmlQznO.net] https://code.msdn.microsoft.com/DirectX-Video-Memory-ee7d8319/sourcecode?fileId=92531&pathId=2014969931
140 名前:デフォルトの名無しさん mailto:sage [2019/06/04(火) 10:38:23.73 ID:HNHYFj8Q.net] >>137 ありがとうございます!助かりました!
141 名前:デフォルトの名無しさん mailto:sage [2019/06/07(金) 09:56:48.90 ID:DnFV7L+4.net] https://docs.microsoft.com/en-us/windows/desktop/api/commctrl/nf-commctrl-listview_getitemcount 戻り値voidでどうやってアイテムの数取得するんだw マクロ関数だと全て無条件で戻り値voidになってるっぽいな 誰も指摘しないんだろうかね
142 名前:デフォルトの名無しさん mailto:sage [2019/06/07(金) 11:32:17.95 ID:PPbCM9Wo.net] 誰も消防車を呼んでいない精神に基づいてフィードバックしといたよ
143 名前:デフォルトの名無しさん [2019/06/07(金) 11:41:35.06 ID:nJu+ZeI9.net] GetLastResult()
144 名前:デフォルトの名無しさん mailto:sage [2019/06/08(土) 19:35:27.05 ID:RlSH8i12.net] コモンコントロールは作りもAPIも割といい加減だよ 不具合の原因がコレだったみたいなの多すぎ
145 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 08:12:49.27 ID:jumrM7iv.net] >>139 LVM_GETITEMCOUNT を直で使うしかなさそうだな ラッパー関数がある場合はSendMessageは使うなというくせに無茶ぬかす連中だ
146 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 08:49:26.37 ID:8KChITol.net] >>143 何を言ってるんだ
147 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 09:13:16.09 ID:SyILEOwA.net] ドキュメントが間違っているだけ。 マクロはintを返すように正しく定義されている。 === CommCtrl.h === #define LVM_GETITEMCOUNT (LVM_FIRST + 4) #define ListView_GetItemCount(hwnd) (int)SNDMSG((hwnd), LVM_GETITEMCOUNT, 0, 0L)
148 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 11:16:09.70 ID:wmlwj4f3.net] >>139 > マクロ関数だと全て無条件で戻り値voidになってるっぽいな 何かで自動生成してるんじゃね IDEなら>>145 の様に内容確認するのも容易だからたいした問題じゃないわな まあMSしっかりしろよとは思うが
149 名前:デフォルトの名無しさん [2019/06/09(日) 11:17:42.54 ID:Ko0/a2ew.net] >ラッパー関数がある場合はSendMessageは使うなというくせに 言ってることとやってる事が違うっていう意味かと >>144 アスペか
150 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 12:52:47.40 ID:VLDoaadq.net] >>147 ??? だからドキュメントのシグネチャが間違ってるだけで「マクロの方を使えと」いう方針とやってることが違うというわけじゃねえだろ 「LVM_GETITEMCOUNTを使うしかない」とか言ってる時点で実際の定義もそうなってると勘違いしてるからなw ちなみにmsdnのドキュメントは合ってる(https://msdn.microsoft.com/en-us/windows/desktop/bb774957) MSも雑だしアプリ開発者の方も雑だなってだけの話
151 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 15:47:59.75 ID:2sqBIYy9.net] 雑同士の雑な殴り合い
152 名前:デフォルトの名無しさん [2019/06/09(日) 16:01:22.43 ID:P23LzvOV.net] SendMessage()でもマクロでもメンバ関数でもどれでもいいけど、「GETITEMCOUNT」で大小文字区別なしでキーワード検索できるようにしておくことが重要でしょ。 各開発環境に付属するメソッド参照だけだと追跡しきれないので結局、原始的なキーワード検索になる。
153 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 16:38:58.71 ID:8KChITol.net] >>147 > 直で使うしかなさそう > ラッパー関数 何を言ってるんだ
154 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 18:30:20.13 ID:jumrM7iv.net] 教祖様に批判的な意見には無差別な敵意にかられる信者がここにはいるようだね
155 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 18:55:06.29 ID:8KChITol.net] 的外れな事が批判的な意見か
156 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 19:11:47.62 ID:jumrM7iv.net] >>153 ListView_GetItemCountの返却値がvoidというmsdnの公式発表を批判しているのだが 何がどう的外れとおまえさんはぬかすんだ? typoなら訂正すべきところ、それすら行われていないんだが おまえさんとこの自転車操業を自転車操業だから大目に見ろという論法を一般化しようってか?
157 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 19:20:30.28 ID:wmlwj4f3.net] 横からだけど… > 何がどう的外れとおまえさんはぬかすんだ? >>143 > LVM_GETITEMCOUNT を直で使うしかなさそうだな
158 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 19:39:45.23 ID:jumrM7iv.net] >>155 それがどう的外れなんだ? msしっかりしろと、あんたが言ったんだが
159 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 20:00:24.85 ID:881O2WpS.net] 皮肉であることが俺含めて伝わっていなかったらしい
160 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 20:09:15.52 ID:8KChITol.net] >>154 だから引用してるやん > LVM_GETITEMCOUNT を直で使うしかなさそうだな > ラッパー関数がある場合はSendMessageは使うなというくせに ListView_GetItemCountを使ってもSendMessageにLVM_GETITEMCOUNTを指定しても 全く同じって事が理解できていないから>>143 みたいな発言になるんだろ
161 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 20:24:49.88 ID:2sqBIYy9.net] 暇そうだな
162 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 20:55:51.32 ID:wmlwj4f3.net] >>156 ドキュメントの話と実際の実装の話の区別もついてないから指摘されてる >>148 がはっきり書いてるだろ 皮肉だと言い訳するならそれでもいいけどw
163 名前:デフォルトの名無しさん mailto:sage [2019/06/09(日) 22:37:10.83 ID:5tHDq89F.net] LVM系ってSendMessageで構造体のポインタ渡すマンだから 外部プロセスから弄ろうとすると面倒すぎる
164 名前:デフォルトの名無しさん [2019/06/10(月) 12:33:46.13 ID:g6tidy/F.net] >>154 MSのいつもの言い訳「仕様です」 つまりvoidのtypoは仕様だ
165 名前:デフォルトの名無しさん [2019/06/10(月) 12:42:02.76 ID:5kEo9ezr.net] >>158 >>143 を擁護するつもりは無いが >ListView_GetItemCountを使ってもSendMessageにLVM_GETITEMCOUNT 同じ機能だということも承知の上で 「LVM_GETITEMCOUNT を直で使うしかなさそうだな」→オレオレ関数を造りたいのにオレには造らせない 「ラッパー関数がある場合はSendMessageは使うなというくせに」→MS自身はSNDMSGを使ってる 論点が違うんだよ MS自身が用意した(SendMessageを使った)ラッパー関数を使えという主張に納得するかしないかの問題 >>143 は MS無視して(SendMessageを使った)ラッパー関数を自分で造ったら使ってもいいだろってことで 「ラッパー関数がある場合はSendMessageは使うな」に意味が無いと言いたいんだろ 漏れはエントロピー増やすのは反対
166 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 13:08:37.02 ID:gj8XPCJq.net] >>163 >>143 じゃないならそのエスパーもややこしくしてるだけやん? 論点
167 名前:烽サっちがズレてるような というか「MS自身が用意した(SendMessageを使った)ラッパー関数」とか言ってるし 他人のふりした>>143 か、>>147 もそうだったのか、とすら思える どっちが>>143 の意図だったにせよ的外れなのには変わりないけどな [] [ここ壊れてます]
168 名前:デフォルトの名無しさん [2019/06/10(月) 13:17:29.12 ID:5kEo9ezr.net] どっちでもいいな voidじゃないのにvoidと書かれてるのが問題なんだから
169 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 13:19:51.67 ID:Fv0cH94V.net] >>164 が >>143 である可能性も否定できない
170 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 13:33:14.11 ID:gj8XPCJq.net] 自分で自分を否定するのか そして>>166 が>>143 である可能性も でいいのかな
171 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 15:19:10.62 ID:U3FSgHuu.net] ここまで漏れの自演
172 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 18:54:19.05 ID:h2AhNEsP.net] すごいレスが伸びてると思ったら・・・・ 人と人をいがみ合わせるMSが巨悪だということで手打ちにしたらいかがだろうか
173 名前:デフォルトの名無しさん [2019/06/10(月) 19:18:33.98 ID:Fj7bi2y1.net] ドキュメントが間違ってたぐらいで鬼の首取ったようにギャアギャア騒ぐことが許されるのは初心者のうちだけでしょ。
174 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 19:34:39.88 ID:OlE51f/u.net] 単なる指摘に>>143 が過剰反応してるだけ
175 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 22:22:35.68 ID:aj7K9vQb.net] >>158 何だおまえさん、MSKKの社員がここでどうたらぬかしてるとでもぬかすのか? だったら、それを公式見解と断る必要があるんだが
176 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 22:23:29.07 ID:aj7K9vQb.net] >>162 ほんこれ
177 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 22:29:27.87 ID:TC6Uh5Cw.net] またエントロピーが増えてきたw
178 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 09:28:10.66 ID:oRHFwQ78.net] >>172 誰もそんな事言ってないけど?
179 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 14:20:31.55 ID:lbh69FdF.net] 初心者質問です。 VBAからIEで印刷するときにプリンター選択を自由に行いたいです。 プリンタを選択する部分は、syslistview32というクラス名で、hwndまでわかっています。 sendmessageの、LVM_GETITEMCOUNTで、プリンターの数まで取得できることを確認しました。 今は、LVM_SETITEMSTATEで、構造体とテキトーなindexをsetして、sendmessageをしたら、IEが落ちてしまうような状態です。 メモリー書き込みも考慮しなければいけないなど情報も見かけましたが、VBA半年程度しかやっていないので、OSに近い処理は何から調べたらいいのかわかりません プリンター名が指定の文字列に該当するもののindexをsyslistview32から取得し、syslistview32の選択をそのindexにするような、VBAのコードをお教えいただくことはできないでしょう。(Cなどでも大丈夫です。) 以上、よろしくお願いします。
180 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 14:27:56.01 ID:Y18rXsQw.net] LVM_GETITEMCOUNT を NG にした 残念だったな
181 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 15:50:09.81 ID:mh1wU8om.net] とばっちりカワイソス
182 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 16:15:17.11 ID:DThKFJnr.net] LVM_GETITEMCOUNTって書いとけばキチガイ一人避けれるということでしょ
183 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 16:18:02.74 ID:DThKFJnr.net] >>176 デフォルトのプリンタを取得して保存しとく デフォルトのプリンタ変更する IEで印刷開始 デフォルトのプリンタもとに戻す こんなんじゃだめなのか?
184 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 16:34:17.98 ID:+sMFHfdj.net] LVM_GETITEMCOUNT スレッドまたぎはNG
185 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 17:55:31.55 ID:b3tPk+od.net] >>180 ありがとうございます 今はそれで運用しているのですが、デフォルトプリンターを変更しても、IEで現在立ち上げているページのプリンターの選択は変わりませんでした。(新しいタブやページなどは変わる) ですので、デフォルトプリンターを変更した後タブを複製して、そのタブをアクティブにして、複製されていないhtmlの箇所をコピーして、印刷して、タブを閉じて、デフォルトプリンターを元に戻すような処理にしています。 プリンターを変更しないといけない処理が過去にあったりしたそうなので、その場でプリンター選択を操作できるのであれば、知りたいという感じです
186 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 18:15:49.68 ID:1BO360IJ.net] LVM_SETITEMSTATEで落ちるのはオレオレ構造体のミスとかじゃないの
187 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 19:34:28.79 ID:iv+iCaIJ.net] 別プロセスからメッセージ投げるから、IEが構造体にアクセスできないってことでしょ? VirtualAllocExでメモリ確保してそこに構造体用意しては LVM_GETITEMCOUNT
188 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 20:56:45.31 ID:HsLA7EXf.net] >>175 じゃあ何のために158みたいな戯れ言をぬかしたんだ? アホだからか? それともバカだからか?
189 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 21:07:50.93 ID:oRHFwQ78.net] >>185 なんで>>158 から社員が出てくるんだよ 理解できていないのは>>143 って事だぞ 全く同じって事が(>>143 には)理解できていないから>>143 みたいな発言になるんだろ って事だぞ
190 名前:デフォルトの名無しさん mailto:sage [2019/06/11(火) 22:59:27.04 ID:xU3mv9gp.net] 意味が分からん。 ドキュメントが間違ってるだけで、マクロ関数はintで実装されてるから気にせず使えって話で合ってる?
191 名前:デフォルトの名無しさん mailto:Sage [2019/06/11(火) 23:02:51.29 ID:VKkOh0JU.net] >>184 ありがとうございます。少し調べてやってみます。
192 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 00:21:25.69 ID:TGTlo7vf.net] WiteProcessMemoryの返り値が0になる(´・ω・`) GetSharedMemの返り値 のアドレスが、「-1597046784」 とか返ってくる(´・ω・`) Long型(-200万〜200万くらい)なのに(´・ω・`) 助けてください(´・ω・`) tid = GetWindowThreadProcessId(lngSysListView32, pid) hProc = OpenProcess(PROCESS_VM_OPERATION Or PROCESS_VM_READ Or PROCESS_VM_WRITE, _ False, pid) lpShared1 = GetSharedMem(hProc, LenB(li)) lpShared2 = GetSharedMem(hProc, LenB(lt)) For i = 0 To maxitem - 1 li.mask = LVIF_TEXT li.iItem = i li.iSubItem = 0 li.lpszText = lpShared2 li.cchTextMax = LenB(lt) lngRC = WriteProcessMemory(hProc, ByVal lpShared1, li, LenB(li), lWritten) lngRC = WriteProcessMemory(hProc, ByVal lpShared2, lt, LenB(lt), lWritten) Public Function GetSharedMem(ByRef hProc As Long, ByVal memSize As Long) As Long GetSharedMem = VirtualAllocEx(ByVal hProc, ByVal 0&, ByVal memSize, MEM_RESERVE Or MEM_COMMIT, PAGE_READWRITE) End Function
193 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 01:18:48.45 ID:udVNzUQx.net] 176だよな・・・ GetSharedMemなんてAPIあったっけ?と思ったら、MSDNのサンプルまんま使ってるのかな? lpShared2とかltとか変数の意味が分からん この辺参考にして作り直したら ttp://hongliang.seesaa.net/article/7851680.html
194 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 02:03:09.01 ID:WbpzR08B.net] -1597046784==0xa0cf0000、別におかしくはなさそうな >Long型(-200万〜200万くらい)なのに(´・ω・`) VBA(VBS?)のLongって22bitなの? 10bit勘違いしてるだけでは?
195 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 07:51:56.01 ID:AF2NDvCn.net] >>190 ありがとうございます 読んで理解して再度実装してみます 今回のコードはこれを丸コピして、プリンター選択画面に対して試してみているという感じです。(プリンター名一覧を取得できるかどうか) https://teratail.com/questions/120773 >>192 うわ、本当だ。知れて良かったです。ありがとうございます bit反転が起きていると思って、反転させてみたら(+2 ^32?)オーバーフローが起きて、勘違いしていました LVM_SETITEMSTATEはここを参考にして書いていました https://stackoverflow.com/questions/12342433/i-need-to-select-an-item-of-a-syslistview32-using-sendmessage-in-c-sharp?rq=1 https://oshiete.goo.ne.jp/qa/4705094.html 今調べたらこっちのはSolvedなので参考にしてみます https://social.msdn.microsoft.com/Forums/vstudio/en-US/f7788669-c3a9-4d80-b61b-8e26870c7cf4/select-listviewitem-using-lvmsetitemstatesolved?forum=vbgeneral いろいろと助かります
196 名前:デフォルトの名無しさん [2019/06/14(金) 12:34:20.64 ID:rNE5XrYC.net] 馬鹿には無理
197 名前:デフォルトの名無しさん [2019/06/14(金) 12:52:57.90 ID:bpAwmG5b.net] ソフト業界でマイクロソフトは邪魔でしかない。 まともなものをよくするならいいが、悪するのがマイクロソフトで しかも、おかしなものを直さず放置して悪化させる。 マイクロソフトは邪魔な存在でしかない。 マイクロソフトの弱点は仕様通りに作れないのは欠点は 同時に自社のソフトをWindows以外のデバイスへ移植できないことも意味する。 そこ弱点だし、将来性がないのもそのあたり。 Windowsの次のOSの仕組みを作ってもソフトの移植ができない。 来年か再来年あたりに出すわけだが引き継ぎできないだろうね。 昔にアーケードゲームの中途半端な移植のファミコンソフトレベルでしかない。 作っても何か違うって状態になる。
198 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 13:22:29.13 ID:FKc1iwhz.net] >>194 突然どうした? この朝鮮臭い駄文は窓板きっての汚物キチガイマカーのコピペと見受けるが
199 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 15:32:06.70 ID:vVm8Z7bX.net] >>194 内容はともかく、もうちょっと日本語を頑張れ。
200 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 15:50:36.86 ID:sZCV0u2+.net] >>194 >マイクロソフトの弱点は仕様通りに作れないのは欠点は 同時に自社のソフトをWindows以外のデバイスへ移植できないことも意味する。 この文章は日本語としておかしい。 >昔にアーケードゲームの中途半端な移植のファミコンソフトレベルでしかない。 この文章も日本語としておかしい
201 名前: mailto:sage [2019/06/14(金) 18:48:04.20 ID:FySvhFYo.net] >>194 >悪するのが >マイクロソフトの弱点は仕様通りに作れないのは欠点は同時に自社のソフトをWindows以外のデバイスへ移植できないことも意味する。 >そこ弱点だし >そのあたり >昔に 以上、日本語としておかしい部分を抽出したので訂正するように
202 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 21:10:26.30 ID:B8znrq/O.net] 日本語おかしい奴vsあたまおかしい奴
203 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 21:14:02.15 ID:RsWDD4iG.net] エイリアン対アバター並の意欲作だな
204 名前:蟻人間 mailto:sage [2019/06/14(金) 21:14:45.86 ID:lQGpZUNA.net] あたまがぱっかーん
205 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 04:09:22.45 ID:HeZkFDT3.net] 寄生獣だな
206 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 15:19:28.33 ID:RxcvAD6u.net] ダメだぁ... WriteProcessMemory がどうしても失敗する(´・ω・`) デスクトップのsyslistview32やexplorerのDirectUIHWNDでは成功(返り値1)するんだけど、 メモ帳やIEのプリンター選択のsyslistview32や、メモ帳のEditに対しては失敗(返り値0)する なんでー?
207 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 15:34:33.84 ID:RxcvAD6u.net] Err.LastDllError の番号は998で、 メモリ ロケーションへのアクセスが無効です。
208 名前:デフォルトの名無しさん [2019/06/16(日) 17:12:52.81 ID:Z9zSyDOE.net] WOW64
209 名前:デフォルトの名無しさん mailto:Sage [2019/06/16(日) 20:39:35.26 ID:RxcvAD6u.net] >>205 64bit版でコンパイルしたら、32bit版のプロセスに介入することできないから難しいという感じでしょうか(´;Д;`) 64bit版のIEでも返り値は0でした... Long型を、LongPtrにしてもダメでした...
210 名前:デフォルトの名無しさん mailto:sage [2019/06/17(月) 02:30:25.07 ID:q7RVlLCN.net] 32bit,x64の実行ファイル2つ作って用途に合わせて切り替えたら?
211 名前:デフォルトの名無しさん [2019/06/17(月) 11:24:55.79 ID:lxO8a0KV.net] いよいよwindowsを捨てる時が来たようだ
212 名前:デフォルトの名無しさん mailto:sage [2019/06/18(火) 04:17:01.07 ID:fify6tPn.net] また買えばいいよ
213 名前:デフォルトの名無しさん [2019/06/18(火) 06:23:28.70 ID:3nOE2mBA.net] プログラム板にキチガイ降臨中!botに一晩も反応する異常さ 一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。 https://mevius.5ch.net/test/read.cgi/tech/1559872586/ 142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO >>141 名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、 片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか? 一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
214 名前:デフォルトの名無しさん [2019/06/18(火) 12:45:38.38 ID:1CtlGReK.net] 堂々の一位 hissi.org/read.php/tech/20190618/M25PRTJtQkE.html
215 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 14:06:32.16 ID:DZJ/hc7X.net] >>206 自分は一旦それで絶望して 32bitアプリ用のラッパー作って呼んでる 32bit資産使ってる人はみんなこうじゃないかな
216 名前:デフォルトの名無しさん [2019/06/22(土) 14:29:13.02 ID:8YBlX71B.net] seamless ωωω