VS2015 C#でMCIプログラミングについて教えてください。


以下のURLをみて再生中の音楽の現在位置から10秒巻き戻して再生しようとしています。

http://eternalwindows.jp/winmm/mci/mci02.html 

以下の部分をマネージドに書き換える必要がありますが、TCAHR,DWORD,sizeofを何にかえればいいでしょうか?

教えてください。

TCHAR szBuf[256];
DWORD dwSecond;

mciSendString(TEXT("status bgm mode"), szBuf, sizeof(szBuf) / sizeof(TCHAR), NULL);
if (lstrcmp(szBuf, TEXT("playing")) != 0)
return 0;

mciSendString(TEXT("status bgm position"), szBuf, sizeof(szBuf) / sizeof(TCHAR), NULL);
dwSecond = StrToInt(szBuf) / 1000;

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2017/04/07 22:24:56
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4974ベストアンサー獲得回数2154

ポイント200pt

こういった辺りを参考にすると、

こんな感じになるのではないかと思います。

[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand, StringBuilder strReturn,
                                         int iReturnLength, IntPtr hwndCallback);

    ...

    StringBuilder sb = new StringBuilder(256);

    mciSendString("status bgm mode", sb, sb.Capacity, IntPtr.Zero);
    if (! sb.Equals("playing"))
        return 0;

    mciSendString("status bgm position", sz, sb.Capacity, IntPtr.Zero);
    long sec = Convert.ToUInt64(sb.ToString()) / 1000;
id:mai_mai_mail

ありがとうございます。ご教授いただいた方法で解決しました。

2017/04/07 22:07:16

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません