powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вызов функции из DLL
5 сообщений из 5, страница 1 из 1
Вызов функции из DLL
    #39924152
Cytrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет.

Почему не получается вызвать DllImport из метода?



Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using System.Text;

public void Begin(IntPtr a){
C1.zzz(a);
}
public static class C1{
public void zzz(IntPtr a)
{
[DllImport("user32.dll",SetLastError=true,CharSet=CharSet.Unicode)]
public static extern IntPtr FindWindow(string lpClassName,string lpWindowName);
}
}
...
Рейтинг: 0 / 0
Вызов функции из DLL
    #39924199
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cytrus
Почему не получается вызвать DllImport из метода?

1. Потому что приведенный код не скомпилируется.
2. Потому что DllImport нигде не вызывается.
3. Потому что DllImport невозможно вызвать - это не метод, а атрибут.
...
Рейтинг: 0 / 0
Вызов функции из DLL
    #39924203
Cytrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сон Веры Павловны , это я просто подсократил код.
Моя задумка была вызывать метод по требованию.

Когда эти вызовы находятся в классе, то они работают,
но если я пытаюсь их засунуть в метод, то не хотят.

Дело в том, что я хотел единожды вызвать этот метод из Main, при запуске программы.

Поместить эти dll-ки в память с помощью функции LoadLibrary.
Получить на них указатели, и работать.

Ведь это же нелогично получается.
Под каждую функцию надо загружать в память одну и ту же библиотеку.

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

А так, я бы получил поинтер, и раздавал бы его любым функциям из этой библиотеки.
Возможно такое?
...
Рейтинг: 0 / 0
Вызов функции из DLL
    #39924218
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cytrus
Когда эти вызовы находятся в классе, то они работают,
но если я пытаюсь их засунуть в метод, то не хотят
надо же ))
метод вне класса - такого в c# не бывает

Cytrus
Ведь это же нелогично получается.
Под каждую функцию надо загружать в память одну и ту же библиотеку.

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


dll загружается один раз, ничего делать специально не надо
...
Рейтинг: 0 / 0
Вызов функции из DLL
    #39924229
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cytrus
это я просто подсократил код.

Выкинув из определения метода static, без которого код не скомпилируется?
Ну, и да, в чём заключается "не получается"?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вызов функции из DLL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]