На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Interop
    Как получить доступ к экспортной переменной в DLL используя только .NET, то есть метод managed+unmanaged код на MC++ не пойдёт?
      что тебе мешает сделать функцию возвращающую эту переменную,
      и вызывать уже ее:

      using System.Runtime.InteropServices;
      ..............

      [DllImport ("dll namel")]
       public static extern тип func (params);

       public static void Main()
       {
           myVar = func(params);
       }




        Опиши задачу, что-то мне не очень нравится термин "экспортная переменная" применительно к .NET
          В DLL gpib-32.dll (не моей) определена переменная int ibsta. Она экспортируется (видимо в .def файле было написано EXPORTS ibsta DATA).

          Как получить к ней доступ, не используя unmanaged код
            я точно не знаю, но можешь попробовать

            [DllImport ("dll namel")]
             public static extern тип имя_переменной;
              [AttributeUsage(AttributeTargets.Method)] //только для методов - ничего не выйдет
              public sealed class DllImportAttribute : Attribute
                Подозреваю что никак... тот случай когда без unmanaged не обойтись
                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0221 ]   [ 16 queries used ]   [ Generated: 28.04.24, 14:18 GMT ]