Маршалинг работает странно
От: snowpard  
Дата: 23.09.14 09:27
Оценка:
Делаю маршалинг из с++ dll
Простейший тестовый проект:

В с++ dll'ке одна export-функция

extern "C" void __declspec(dllexport) Calc()
{
}


В c# её вызов:

[DllImport(@"cppdll.dll")]
private static extern void Calc();
private void Button_Click(object sender, RoutedEventArgs e)
{
    Calc();
    MessageBox.Show("OK");
}


Проблема: на одном компе программа отрабатывает нормально (Появляется MessageBox), на другом вылетает на вызове Calc(). На обоих компах Windows 7.

В сгенеренном виндой xml-файле ошибки, указана причина — DllNotFoundException. Почему на другом компе dll'ка вдруг не находится? В обоих случаях exe и dll лежат рядышком в одной папке.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.