Прошу помочь.Подключение Dll на неуправляемом С/С++

Тема в разделе ".NET", создана пользователем evilden, 12 июл 2010.

  1. evilden

    evilden Гость

    Возникла проблема.Есть рабочая dll, необходимо подключить к CLR приложению.
    Подключение происходит нормально. Все функции работают нормально кроме одной(хотя dll проверял все работает в обычных Win32 приложениях).Данная функция производит загрузку из файла если файл не найден-возвращает код ошибки,т.е. все нормально.Но если файл находит(путь указан точный) то происходит ошибка исключение "System.AccessViolationException" попытка записи в защищенную память. способы вызова:

    1)[DllImport("C__Work_.DLL")]
    extern "C" int LoadIn(DWORD*name_);
    2)а также с помощью GetModuleFileName и GetProcAddress

    результат тот же замечу еще раз-другие функции работают нормально.

    Вызыв происходит
    int ret;
    String^ name=(String^)"D:\\file.hex";
    либо
    DWORD*name;
    name=(DWORD*)"D:\\file.hex";
    и
    ret=LoadIn(name);
    результат один и тот же. В win32 приложении первый вариант вызова работал нормально. name как видно выше является указателем на строку содержащую путь к файлу.
    Интересно еще то что когда функция не находит файл(указывается неверный путь к файлу), возвращается int значение -1 (файл не найден) и все,то есть функция работает правильно, ошибок не возникает.Ошибка "System.AccessViolationException" возникает ТОЛЬКО в случае указателя на существующий файл,содержимое которого функция копирует.
     
Загрузка...
Похожие Темы - Прошу помочь Подключение
  1. Hemenede
    Ответов:
    2
    Просмотров:
    231
  2. Skellar
    Ответов:
    10
    Просмотров:
    5.322
  3. webwareroot
    Ответов:
    0
    Просмотров:
    116
  4. Gandliar
    Ответов:
    12
    Просмотров:
    727
  5. virusksv
    Ответов:
    2
    Просмотров:
    1.199

Поделиться этой страницей