Win32API質問箱 Build127

■ このスレッドは過去ログ倉庫に格納されています
2021/12/09(木) 21:32:56.60ID:sYLpmj89
Win32APIについての質問はこちらへどうぞ。

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

■過去スレ
Win32API質問箱 Build126
https://mevius.5ch.net/test/read.cgi/tech/1588339011/
Win32API質問箱 Build125
https://mevius.5ch.net/test/read.cgi/tech/1551247748/
Win32API質問箱 Build124
https://mevius.5ch.net/test/read.cgi/tech/1510395780/

■関連スレ
Visual Studio 2020 Part1 https://mevius.5ch.net/test/read.cgi/tech/1634166667/
Visual Studio 2019 Part7 https://mevius.5ch.net/test/read.cgi/tech/1634178709/
Visual Studio 2017 Part7 https://mevius.5ch.net/test/read.cgi/tech/1558179898/
【C++】 DirectX初心者質問スレ Part41 【C】 https://mevius.5ch.net/test/read.cgi/tech/1521786252/
2022/06/07(火) 14:38:53.32ID:ET6AjTpg
ウィンドウスタイル
2022/06/07(火) 14:39:30.72ID:IY5aTV4U
>>248
ありがとうございます!
一度やってみたのですが、うまくいかなかったので、やり方がよくなかったのかもしれません
Unityという特殊な環境が影響してるのかもしれないですが、、、
2022/06/07(火) 14:41:36.70ID:IY5aTV4U
>>249
後出しですみません
ドラッグでのサイズ変更は許可したいので、ウィンドウスタイルでは無理なのかなーと思ってます
今のところWM_SIZINGはうまく機能してるようです
2022/06/07(火) 14:54:06.59ID:VnjxmjN7
ムリだと思いますゥ~じゃねえよいいからWS_MAXIMIZEBOX抜けや
2022/06/07(火) 15:01:19.63ID:IY5aTV4U
>>252
そんなのは一番最初に抜いてる
2022/06/07(火) 15:31:44.87ID:OnF3qCRP
ちゃんと抜いてんならそれだけで自動的にシステムメニューも含めて
タイトルバーダブクリやWin+↑も無効化されるはずだがな
2022/06/07(火) 15:35:08.03ID:HZXBW/m6
メッセージループの入り口で
WM_NCLBUTTONDBLCLK 等のメッセージを捨てればOK
2022/06/07(火) 16:05:01.49ID:IY5aTV4U
>>255
ありがとうございます
ダブルクリックの方はこれで回避できるんですけど、Windowsキーの方がどうやっても防げなくて、、、
WM_WINDOWPOSCHANGING を拾えばいけるかなー
2022/06/07(火) 16:09:54.86ID:IY5aTV4U
>>254
Windowsキーの方は正確には、Windowsキー + SHIFT + ↑ ですね
2022/06/07(火) 16:55:24.79ID:LNP3bNny
正確には、ってかそれじゃ最初からスナップによるリサイズを防ぎたいって全然違う質問じゃん
SYSCOMMAND監視して無理矢理引っぺがしたりはできるけど行儀悪すぎだから
任意のウィンドウサイズになってもボックスでレンダリングのアスペクト比維持した方がマシだな
2022/06/07(火) 17:24:17.68ID:HZXBW/m6
>>256
SPYでその時にどのメッセージ(多分複数)が来てるか調べて
どれを捨てる or 改変すれば望みの動作になるかを考えろ
2022/06/07(火) 21:10:34.66ID:TZU+Jbyx
最大化はダイアログのスタイルにして抑止するのが定石だけど誰も書かないので一応
C#のFormBorderStyle = FixedDialog の時のウィンドウスタイル=0x16c80000 拡張ウィンドウスタイル=0x00050101
これでスナップの影響も受けないし、その上でサイズ変更もやりたければできる。
許容しつつアス比を維持するのもいい。ゲームのフルスクリーンモードとかそんな感じだろうし
2022/07/03(日) 16:22:44.87ID:K2/9xttr
HINSTANCEかHWNDから、そのプロセスが貰っているコマンドラインオプションを知る方法ってある?
2022/07/03(日) 16:43:25.38ID:wwKaul6r
>>261
WMIか、NTAPIのNtQueryInformationProcessを使う。

https://stackoverflow.com/questions/71237606/get-full-command-line-from-process

https://github.com/reactos/reactos/blob/b671b1cf8f7c3dce718d81f9067e07c66f878498/base/applications/taskmgr/perfdata.c#L585
2022/07/03(日) 16:44:52.75ID:wwKaul6r
GetWindowThreadProcessId使えばHWNDからプロセスID (pid)が得られるはずだ。
2022/07/03(日) 17:40:46.92ID:K2/9xttr
>>262
thx
もう晩酌始めちまったんで
素面に戻ってからやってみるわ

お、飯が炊けた
酢飯と酢の物作んなきゃ
2022/07/13(水) 14:56:13.92ID:6WIGt+Xj
SetWindowPlacement, GetWindowPlacement を使ってウィンドウ位置の保存と復元をしています
マルチモニター環境でも当該モニターで表示されていたウィンドウ情報の保存と復元が Windows10 以前では行えていましたが、
Windows11 になってからは、マウス操作しているモニターで全てウィンドウが表示されてしまいます

これはプログラム側で何か修正が必要なのか、Windows11 上の設定(アプリのプロパティ?)が必要なのでしょうか?
Windows11 でマルチモニターの仕様が変わったというのは分かりますが、具体的にどのように対応すればいいのか分かりません

よろしくお願いします
2022/07/13(水) 15:03:09.79ID:H8j4+v2o
>>265
lengthメンバーはセットしているかな?
2022/07/13(水) 15:53:47.47ID:LawUXVQN
標準の仮想デスクトップとかも追加されてるのでちゃんと動くのかよくわからんよな
2022/07/13(水) 17:22:23.86ID:6WIGt+Xj
>>266
構造体のゼロクリア、length メンバへの sizeof 設定は行っています
使用しているメンバは rcNormalPosition と showCmd のみです

>>267
Windows11 では、モニターのオンオフで狂ってしまったウィンドウ位置の復元を
するようになったという程度の知識しかありません(正しいかどうかも分かりません)が、
実機で色々テストするしかないかもですね(Windows11 にしたくない)
2022/07/14(木) 22:38:26.85ID:ztzbKaJ8
ベータ以前の11のことだからバグかもしれないのがな
11.1で完成するOSなんだろうな
2022/07/14(木) 23:19:01.63ID:je7st1fi
手元の開発環境を Windows11 & マルチモニターで揃えてテストしてみると問題は再現しませんでした
これは問題が発生した環境依存によるものの可能性が非常に高くなりました

お騒がせしましてすみませんでした
2022/07/22(金) 09:23:12.50ID:nl1lv8Ha
名前付きパイプで質問です。
Windows10(x64)で64ビットアプリ(サーバー)と32/64ビットアプリ(クライアント)でパイプ通信するのですが、クライアントが64ビットの場合は問題なし、32ビットの場合は動作したりしなかったっりで、サーバーのCreateNamedPipe関数のnMaxInstancesを1から255にしたら解消しました。
クライアントは1つだけなので1で良いと思ったのですが、何なんだろう?
2022/07/22(金) 10:36:39.51ID:nl1lv8Ha
>>271
再現性なかったわ。
すまん、忘れてくれ。
2022/07/26(火) 18:26:55.94ID:fMGzaZG1
プログラ厶の最低限の文法わかってる人間が、WindowsAPIを使用したGUIプログラムを作りたい場合に、おすすめの本ってありませんか?

正直WindowsAPIのハンドルとかハンガリー記法とかで面食らってぶつかってます。
2022/07/26(火) 18:51:12.11ID:od2hcCSg
> WindowsAPIを使用したGUIプログラムを作りたい

そもそも止めとけ楽な道を進めと思うんだけど、なんで?

> おすすめの本

今時そんな本あるのか分からないけど、猫でもわかるシリーズのWEBサイトでいいんじゃないの
2022/07/26(火) 19:38:38.71ID:qDGm82dw
NT4.0や95の頃の書籍はメッセージやハンドル等丁寧な解説がされていたと思う
2022/07/26(火) 19:54:38.78ID:BV8Vz3Ix
>>273
その程度でなんで面食らうのか面食らってるが
その都度ググっていけば充分じゃないかな
2022/07/26(火) 20:46:20.96ID:SFGiBpCo
Win32でGUIつくるならMsgCrackとRisohEditorを使うといいよ。
2022/07/27(水) 21:47:08.84ID:K/AxbL6V
>>274
今まで他の言語で楽をさせてもらってたのは、他の方のおかげだと気付いて、実際に自分も勉強したいという思いです。

>>275
まさにおっしゃる通りで、先日なんとか相馬 俊治さんという方の本を見つけました、古い本のほうがわかりやすいです。
2022/07/29(金) 10:07:57.73ID:utvRDsk1
C#でもWndProcとかに手を付けると結局Win32APIレベルのメッセージループの仕組みの知識が必要だし
C/C++でWin32APIだけ使ったメッセージループ検証用GUIアプリを用意しとくと捗るよ
2022/07/30(土) 02:15:20.39ID:pJ1A3nc7
C++でクラス化ラップ化する前のピュアなメッセージループをなら猫かな
そこから先は ラップしてるライブラリの方言が出てくるだろうし
2022/07/30(土) 12:31:23.06ID:YQlRXD6d
>>277
ありがとうございます!ツールももちろんですがこの作者のHP自体が非常に貴重ですね!

>>279
ありがとうございます!ラップしてしまうとWin32APIの挙動が見えなくなるので、生で見える環境を用意しておいたほうが良いようなイメージでしょうか?
2022/08/01(月) 14:57:50.07ID:ei01gCPD
>>277
RisohEditor良さそうやね
見た目レトロで良いからネイティブWin32で超軽量GUI作りたいってシーン結構あるから重宝しそうやわ
2022/08/01(月) 16:08:58.49ID:eMiJU5As
MsgCrackにWM_DESTROYを入力すると
void OnDestroy(void)
って出てくる。
これを#include <windowsx.h>のHANDLE_MSGマクロと一緒に使うと吉。
2022/08/01(月) 16:24:30.82ID:n7o9xXsd
自前で巨大なswitch文を並べるんや
2022/08/01(月) 16:46:02.44ID:lS5VDU2q
MFCを勧める人はいないんかい・・・
2022/08/01(月) 17:30:54.15ID:EZlLH+eW
統合環境の力技でマクロ埋め込んだりするしねぇ 癖や方言が強い
2022/08/01(月) 19:48:54.56ID:kaXTkJ9F
いまさら MFC を使いたいんですけど、まずどうすればいいですか?
2022/08/01(月) 20:38:09.58ID:Z+HQWfkn
>>284

windowsx.hで定義されてるHANDLE_MSG()マクロを使えば
いちいちcase文を書く必要がない

switch (uMsg)
{
HANDLE_MSG(hwnd, WM_CREATE, OnCreate);
HANDLE_MSG(hwnd, WM_COMMAND, OnCommand);
...
default:
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}

使わないメッセージはスルーしていい
OnCreate()やOnCommand()のプロトタイプもwindowsx.hで定義されてるので引数を間違ったらエラーで教えてくれる
2022/08/02(火) 17:15:54.00ID:64Iv6nA4
#define BEGIN {
#define END }
に近い感じなので マクロにお任せってあまり好きではない(個人的感想)
2022/08/02(火) 21:12:37.20ID:NatehBYU
false、False、FALSE色々あるなあ
2022/08/02(火) 22:59:22.62ID:clR4IgPX
こういうシステム的な部分を作るとき厄介なのが細かい引数間違えたりすることなのですべて定義されてるのは助かるよ
windowsx.hに入ってるってことはMS推奨なんだろうし
2022/08/03(水) 08:49:02.53ID:HRex91Fl
そのヘッダか忘れたけどコモンコントロール系はマクロが無いとやってられん
それ前提でMSDNにリファレンスがあるし
2022/08/03(水) 12:38:08.58ID:t9tQNkon
そこでWTLですよ
2022/08/03(水) 23:45:13.40ID:+fTvsC8V
感動した
https://github.com/CobaltFusion/DebugViewPP
2022/08/04(木) 23:07:37.30ID:iuI8tOa1
そういえばバイナリエディター「Binary Editor BZ」はWTL使ってたはず
296デフォルトの名無しさん
垢版 |
2022/08/05(金) 02:46:33.66ID:RasK5Hhu
大きな文字や小さな文字をコマンドプロンプトに同じ行で表示したいのですが可能でしょうか?
設定で変えるのではなくプログラムで結果によって変えたいのですが
よろしくお願いします。
2022/08/05(金) 03:00:58.31ID:CLX9KL3y
「あ」と「ぁ」みたいに?
2022/08/05(金) 13:41:02.21ID:w8qsceV0
8pt
   ■                 
   ■  ■     ■ ■■■■■  
 ■■■■       ■    ■   
   ■ ■     ■  ■■■■■■ 
  ■■■■■■   ■     ■   
 ■■■■   ■  ■     ■   
■  ■■   ■  ■■ ■■■■   
■ ■■   ■■  ■■ ■  ■■■ 
■■■■  ■■    ■ ■■■■   

16pt
      ■                ■               
      ■     ■         ■■   ■      ■■■  
     ■■■■■■■■         ■■   ■■■■■■■     
 ■■■■■■■■■            ■■        ■■     
     ■■               ■■        ■■     
     ■■   ■■          ■■        ■■■■■  
     ■■■■■■■■■        ■    ■■■■■■■■■■  
     ■■■ ■■ ■■■       ■         ■■     
   ■■■■  ■■   ■■     ■■         ■■     
  ■■ ■■ ■■     ■■    ■■         ■■     
 ■■  ■■ ■■     ■■    ■■ ■       ■■     
 ■■  ■■■■      ■■     ■■■   ■■■■■■     
■■   ■■■       ■■     ■■■  ■■   ■■■■   
■■   ■■       ■■      ■■   ■    ■■ ■■■ 
■■  ■■■     ■■■       ■■   ■■   ■■  ■■ 
 ■■■  ■   ■■■■        ■■    ■■■■■      
          ■■                           
2022/08/05(金) 18:10:13.24ID:uan7vRb+
色なら変えられるが
https://nodachisoft.com/common/jp/article/jp000152/
2022/08/05(金) 22:00:13.48ID:x2QrbwhX
>>296
不可能ッス!!
301デフォルトの名無しさん
垢版 |
2022/08/05(金) 23:51:13.34ID:2v49rt6J
NFT市場が2年で300億円→2兆円に急拡大したワケ
「保有する」だけではない、アート作品につけられた「価値」

市場規模ですね。これは少し古いデータになりますが、直近では、だいたい
2兆円ぐらいの市場規模になります。去年の3月ぐらいから盛り上がってきて、
2019年は300億円ぐらいと言われていたものが急拡大して、今や2兆円と
なっています。
一番大きいのが「コレクティブル」というものです。実際のNFTでいうと、
「CryptoPunks(クリフトパンクス)」とか「Meebits(ミービッツ)」など、
デジタルアートで、これが76パーセントを占めています。
他にはゲーム、スポーツの会員権のようなもの、メタバース上での利用、
アートなどに使われています。
2022/08/06(土) 00:56:36.07ID:c+phwPql
>>301
どうせビットコと同じ運命…
303デフォルトの名無しさん
垢版 |
2022/08/06(土) 01:06:28.07ID:A+9lJBuH
>>297
いえ、フォントのサイズです。
>>299
色も変えたいので見てみます。ありがとうございます。
>>300
そうですか。ありがとうございました。
304デフォルトの名無しさん
垢版 |
2022/08/06(土) 09:37:57.13ID:Cm9is4wi
>>291
>windowsx.hに入ってるってことはMS推奨なんだろうし

20年くらい前なら同意するが
今はもう非推奨
305デフォルトの名無しさん
垢版 |
2022/08/06(土) 09:38:29.30ID:Cm9is4wi
>>285
ダメ、絶対。
306デフォルトの名無しさん
垢版 |
2022/08/06(土) 09:39:01.65ID:Cm9is4wi
>>287
やめとけ
2022/08/06(土) 10:58:35.84ID:gIOgTSvM
じゃあどれならいいんだよw
308デフォルトの名無しさん
垢版 |
2022/08/06(土) 15:56:25.30ID:eSBCWCwI
Win32API
2022/08/06(土) 16:07:28.86ID:LLV93bqs
知識としては必要だが、最初から最後までフレームワーク使わずにWin32だけでやるのは時間の無駄だろう。
2022/08/06(土) 19:02:31.04ID:E+U3mr6/
そうでもない
2022/08/06(土) 19:03:10.71ID:f4eIJ5Mn
>>309
フレームワークの学習コストはどのように評価しますか?
2022/08/06(土) 19:07:52.04ID:LLV93bqs
この先そのコストを回収できるくらいプログラミングする見込みがあるかどうか次第だな。
2022/08/06(土) 20:41:33.14ID:mK2UhqOX
そのWin32APIのラッパーとなるべきフレームワークがことごとくゴミなんだもんよ
MS金余ってんだからQtでも買っときゃよかったのに
2022/08/06(土) 20:42:57.75ID:A61GDKit
>>312
学習した結果フレームワークがうんこだったと自覚したときの絶望感を、学習前にどのように織り込めばいいですか?
2022/08/06(土) 20:58:55.11ID:LLV93bqs
素のwin32と既存のフレームワークと自前のオレオレフレームワークのどれが一番うんこか次第だな。
2022/08/06(土) 21:37:39.73ID:A61GDKit
>>315
あなた自身はどう思っていますか?
2022/08/06(土) 21:39:07.40ID:nAr30yJy
win95時代にCで作ったハンドルメモリリーク検知付きのフレームワーク()があるけどいまだに世話になってる
新規でならC#で適当に作るがアプリの寿命を考えるといまだに上記フレームワーク()になるだろう
2022/08/06(土) 21:54:12.10ID:S1WP3eVH
男なら誰しも自分だけの車輪再発明・・・じゃなかったフレームワークを心に持つよな
2022/08/06(土) 22:13:31.50ID:mZ1/a9El
wxWidgets、DelphiのVLC、それの模倣のLazarus Component Library (LCL)位が今でも活発に開発されてるWin32フレームワークか。
wxWidgetsとC++Builder(VCL)には散々世話になった。
2022/08/06(土) 22:14:29.50ID:mZ1/a9El
×DelphiのVLC
○DelphiのVCL
2022/08/07(日) 21:24:24.65ID:WV/2UEsV
>>317
メモリーリークは
https://mevius.5ch.net/test/read.cgi/tech/1652160275/365
に一晩でちょいちょい、て書いたやつを貼ったら沈黙されてしまった…
普通誰でもそうすると思うのに、rust! rust! と連呼されてもねえ

でもハンドルリークは考えたことなかったなあ…
2022/08/07(日) 22:03:11.08ID:fAQAAmLc
>>321
> 沈黙されてしまった…
相手されてないだけかと...
2022/08/07(日) 22:19:05.28ID:PKSgBlrY
>>322
なる
2022/08/07(日) 22:21:12.86ID:c43tg8Rc
ならんだろ。
2022/08/09(火) 01:28:22.61ID:6wLu/xJX
オレオレライブラリ作って悦に入るのは初心者レベル2のやること
2022/08/09(火) 16:24:46.11ID:rOh0RBr3
経験しておくとライブラリの手抜きがわかってシステムのバグを予想しやすくなるけどな
2022/08/14(日) 17:46:08.17ID:qUOj9dBB
>>318
「車輪の再発明だから駄目」という理念は、先に進んでいるアメリカに有利な言葉。
後発者が上に上がって来ささないため、メンタルからくじく。
アメリカはそういう国。
2022/08/14(日) 18:48:02.83ID:W71axh2R
Googleは車輪の再発明しかしてないけどな
検索だって最初じゃない
その代わり頭の良い奴らが本気でやるから良いものになる
日本が得意としてた事だったがな
2022/08/15(月) 10:36:30.31ID:LrEHeo01
頭の悪い人が足引っ張る法律作って海外に先を越されるパティーン
2022/08/15(月) 10:47:36.26ID:VNnB4sci
>>287
普通に使えばいい。
俺も使ってる。
2022/08/15(月) 14:36:52.56ID:+9oi41Wm
>>327
GNUも再発明なんか?w
2022/08/15(月) 15:43:33.22ID:AOxAYYNB
>>331
彼らは、自分達が造ったものを遣わせてやりたいから「これ以上の再発明はするな」
と言ってくるが、自分達も実は再発明した結果であることは棚に上げている。
2022/08/15(月) 16:18:07.18ID:Z5BB7x+B
ここで車輪の再発明の指摘は的外れ
発明なんて一切してない
他人の成果物をソース読んでないからといって横取りする傲慢野郎
2022/08/15(月) 17:10:35.77ID:YGdpIuz3
いまさらソフトウェア開発競争を国家間の諍いの次元でしか捉えてないやつは
一行もプログラム組んでないのがアリアリだねw
2022/08/15(月) 18:25:51.34ID:AOxAYYNB
国家間というより、先に作ってしまった人が他人に別のものを作ってもらいたくない
心理が働くと、「車輪の再発明禁止」という如何にもまっとうなことらしき標語
となる。
2022/08/15(月) 19:37:50.16ID:/49gMCwa
車輪の再発明禁止は高機能なソフトウェアをオープンソースにするということで囲い込み、再発明させる気を起こさせなくしてる
オープンソース文化が強いものを更に強くしてしまってる
2022/08/15(月) 23:02:24.27ID:dK5hO1Lx
作って楽しそうなものなもものの内、芸術性を伴わず技術だけで
作れるようなものはほぼ全てオープンソースで無料になってしまっている
(フォトショップみたいな高機能なものは除く)。
2022/08/15(月) 23:10:53.60ID:AwPJsiC0
再発明をしないまでもその部品と構成や仕組みを知っていると高機能なアプリ開発などへの機転や応用が利きやすいと思う
339デフォルトの名無しさん
垢版 |
2022/08/16(火) 01:19:06.38ID:agNT7bMr
以下のコードが動かなくて困ってます。

pgfFrame = AVIStreamGetFrameOpen(paviStream, (LPBITMAPINFOHEADER)AVIGETFRAMEF_BESTDISPLAYFMT);
AVIStreamGetFrameClose(pgfFrame); ←これを実行したら落ちる

AVIStreamGetFrameCloseを実行しなくても動くのですが、再度Openした時に少しずつメモリを食いつぶして行くので困ってます。
止まった時にVC++の実行ボタンを再度押すと、内部で使ってるDLLがアンロードされてその後は動くようになります。
そうなると何回でもOpen→Close出来る様になり、メモリも食いつぶしません。
どうしたらいいんでしょうか?
340デフォルトの名無しさん
垢版 |
2022/08/16(火) 11:35:45.33ID:2x3mrzZQ
>>329
ほんそれ
341デフォルトの名無しさん
垢版 |
2022/08/16(火) 11:41:24.43ID:2x3mrzZQ
>>339
AVIStreamRelease
(こっちは自動 Close してくれるとのこと)
342デフォルトの名無しさん
垢版 |
2022/08/16(火) 14:36:20.03ID:agNT7bMr
>>341
詳しく書くとこうなってるんです。
AVIStreamGetFrameCloseだけ落ちるんで困ってます。
これを実行しなくても動くのですが、複数回Openするとどんどんメモリを食いつぶすので困ってます…

AVIFileOpen(&paviFile, FileName, OF_READ | OF_SHARE_DENY_NONE, NULL);
AVIFileGetStream(paviFile, &paviStream, streamtypeVIDEO, 0);
pgfFrame = AVIStreamGetFrameOpen(paviStream, (LPBITMAPINFOHEADER)AVIGETFRAMEF_BESTDISPLAYFMT);

if(pgfFrame != NULL){ AVIStreamGetFrameClose(pgfFrame); } ←これだけ落ちる
if(paviStream != NULL){ AVIStreamRelease(paviStream); }
if(paviFile != NULL){ AVIFileRelease(paviFile); }
2022/08/16(火) 14:45:35.08ID:ySPaUmMI
そういう不具合が出るけど是正が困難な処理は別プロセスとして動かして終わったらそのプロセスを終わらすといいよ
解決したら統合すればいい
344デフォルトの名無しさん
垢版 |
2022/08/16(火) 15:02:38.50ID:2x3mrzZQ
プロセス別けて落とすのも同じ効果だと思うけど
DLLを自前でアンロードするコードを入れても良いんじゃないかな

そもそも
pgfFrame = AVIStreamGetFrameOpen(paviStream, (LPBITMAPINFOHEADER)AVIGETFRAMEF_BESTDISPLAYFMT);

この間の処理に問題があるんじゃないかな

if(pgfFrame != NULL){ AVIStreamGetFrameClose(pgfFrame); } ←これだけ落ちる
2022/08/16(火) 15:28:13.38ID:agNT7bMr
>>343-344
ありがとうございます。

>この間の処理に問題があるんじゃないかな
この間は何にもしてなくても落ちちゃうんですよね… なんでだろう?

DLLを自前でアンロードする事も視野に入れてもう少し試行錯誤してみます
346デフォルトの名無しさん
垢版 |
2022/08/16(火) 15:45:44.34ID:2x3mrzZQ
AVIFileExit();
してないというオチ?
2022/08/16(火) 15:59:37.24ID:agNT7bMr
>>346
AVIFileInit()とAVIFileExit()
前に両方入れてみたんですが、入れても入れなくても何も変わらなかったんですよね…
あとでまた試してみます。
348デフォルトの名無しさん
垢版 |
2022/08/16(火) 16:18:58.86ID:2x3mrzZQ
本気で解決したいなら再現する全ソースコードを晒すのと
実際に読もうとしてるファイルのURLを晒して逝け
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況