C# MciSendString Recording, работает в режиме отладки, не развернут

Я действительно надеюсь, что кто-то может указать мне правильное направление с этим. Этот код отлично работает при отладке в Visual Studio Express 2010, но выдает ошибку mci 263 - "Указанное устройство не открыто и не распознается mci" при сборке и развертывании.

Я пробовал возиться с настройками сборки, а что нет, но не радость. Конечно, это должно быть проблема конфигурации, а не код?

Буду очень признателен за любую помощь.

----- Код следует ----

[DllImport("winmm.dll")]
private static extern int mciSendString(string lpstrCommand, string lpstrReturnString,               int uReturnLength, int hwndCallback);
[System.Runtime.InteropServices.DllImport("winmm.dll")]
private static extern bool mciGetErrorString(int fdwError, StringBuilder lpszErrorText, int cchErrorText);

///Inside a button function
mciSendString("open new Type waveaudio Alias recsound", "", 0, 0);
mciSendString("record recsound", "", 0, 0);

//Inside another button function
int i = mciSendString(@"save recsound C:/test22/sound", outs, 0, 0);
MessageBox.Show(""+i);

StringBuilder buffer = new StringBuilder(128);
bool returnValue = mciGetErrorString(i, buffer, buffer.Capacity);
string err = buffer.ToString();
MessageBox.Show(buffer.ToString());

2 ответа

Ну, я заставил твой код работать, фактически указав файл, чтобы сохранить его как...

string outs = "";
//Inside another button function
int i = mciSendString(@"save recsound C:/test.wav", ref outs, 0, 0);

Я также изменил параметр out на ref, хотя сомневаюсь, что это как-то связано с этим.

Какой тип файла вы пытаетесь воспроизвести? И где это развернуто? Я недавно столкнулся с той же проблемой; Я не могу играть.mp3s или.wmas на одном из моих тестовых компьютеров (я получаю ту же ошибку: 263). Я установил Windows Media Player, и они работали, так что это наводит меня на мысль, что кодек отсутствует. Теперь я просто должен выяснить, что это был за кодек (ы).

Другие вопросы по тегам