質問: new Point(0, 0); // CopyFromScreenメソッドでキャプチャ g.CopyFromScreen( upperLeftSource, upperLeftDestination, this.ClientSize, CopyPixelOperation.SourceCopy); //確認用にファイル出力 bmp.Save("C:\\entrypic\\"+i+".png"); } break; //再生が全て終了した時 case (int)WMPLib.WMPPlayState.wmppsMediaEnded: break; default: break; } } ```
回答: ※私が回答を書いている間に質問が編集されたようなので、回答を書き直しました。 `axWindowsMediaPlayer1`は、AxWindowsMediaPlayer.aspx) のインスタンスだと仮定します。 ``` for(int i=0;i < axWindowsMediaPlayer1.currentMedia.duration; i++) ``` `int`でループを回しているので、`axWindowsMediaPlayer1.currentMedia.duration`が秒数だとすると秒ごとの画像しか保存できません。 無理やりやるなら、ここのループを`for`ではなく`while`で回す、でしょうか。 ただ、ちょっとどうかなとは思います......。 `PlayStateChange`イベントではなく、`PositionChange` イベント.aspx)で画像を保存してはどうでしょうか。