2013-09-28 2 views
0

winmm.dll을 사용하여 기본 MP3 플레이어를 만들고 있습니다. FFW 방식에 약간의 문제가 있습니다. 기본적으로 활성화 할 때 아무 일도 발생하지 않습니다.C# winmm.dll mp3 플레이어 빨리 감기 방법?

아마도 내가하려는 일을 파악할 수 있습니다.

첫 번째 6 개의 주석 행이 작동하는 샘플 코드를 가지고 있습니다. 내 루프를 실행할 때 나에게 도움이되지 않습니다. 무엇을 잘못 했습니까?

public void FFW() 
{ 
    //string cmd1 = "set MyMp3 time format ms"; 
    //mciSendString(cmd1, null, 0, 0); 
    //cmd1 = "seek MyMp3 to 8000"; 
    //mciSendString(cmd1, null, 0, 0); 
    //cmd = "play MyMp3"; 
    //mciSendString(cmd, null, 0, 0); 

    int ffw5sec = 5000; 

    while (isPlaying == true) 
    { 
     string cmd = "set MyMp3 time format ms"; 
     mciSendString(cmd, null, 0, 0); 
     cmd = "seek MyMp3 to " + ffw5sec.ToString(); 
     mciSendString(cmd, null, 0, 0); 
     cmd = "play MyMp3"; 
     mciSendString(cmd, null, 0, 0); 

     ffw5sec += 5000; 

    } 
} 

답변

0

는 오, 나는 루프에서 밖으로 내 코드를했다 때 .... 일하고 있어요

내 솔루션 : 건너 뛰기 기능은 최적 아니지만,이어야 그 일을 내가 찾던 , 나는 더 나은 건너 뛰기를 계산하기 위해 앞으로 타이머를 추가해야한다고 생각합니다.

int ffw5sec = 5000; 

public void FFW() 
{ 
    if(isPlaying == true) 
    { 
     string cmd = "set MyMp3 time format ms"; 
     mciSendString(cmd, null, 0, 0); 
     cmd = "seek MyMp3 to " + ffw5sec.ToString(); 
     mciSendString(cmd, null, 0, 0); 
     cmd = "play MyMp3"; 
     mciSendString(cmd, null, 0, 0); 

     ffw5sec += 5000; 
    } 
} 
+1

너무 애매하기 때문에 대답보다 더 많은 의견을 말합니다. ** while ** 루프를 제거했다는 말입니까? 문제를 어떻게 해결했는지에 대해보다 명확하고 구체적으로 대답 한 다음 답변을 승인 된 것으로 표시하십시오. –

관련 문제