Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как вызвать метод из dll 
V
    Опции темы
Nikitozz
Дата 3.11.2008, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 19.9.2007
Где: Москва

Репутация: нет
Всего: 0



Люди помогите! Я спать хочу! Со вчерашнего вчерашнего дня сижу и не могу разобраться в чем ошибка...

написал простенькую dll-ку такого вида:
Код

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace interOne
{
    public class firstclass
    {
        int func()
        {
            return 1;
        }
    }
}


также написал простенькую программку, там должен вызваться метод func() из длл и значение 1 (которое возвращается методом) должно появиться в текстБоксе, все это при нажатии кнопки...

программка:
Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using interOne;

namespace DesktopController
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int a = func(); //   <--- Пишет что здесь ошибка
            textBox1.Text = a.ToString();      
        }
    }
}


Уже не знаю че делать. ДДЛ-ку добавил в References. Главное прогрммка видите пространство имен в ДЛЛ-ке, класс, но func() вызвать не может, пишет: The name 'func' does not exist in the current context

Уже чего только не пробовал, все варианты которые пришли в голову перепробовал, облазил этот форум, другие, половину Рунета. ничего не помогает.
Помогите пожалуйста!!
PM MAIL WWW   Вверх
Partizan
Дата 3.11.2008, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 8
Всего: 67



Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using interOne;
namespace DesktopController
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            firstclass cl = new firstclass();
            int a = cl.func(); //   <--- Пишет что здесь ошибка
            textBox1.Text = a.ToString();      
        }
    }
}



--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Nikitozz
Дата 3.11.2008, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 19.9.2007
Где: Москва

Репутация: нет
Всего: 0



Partizan, делал и так тоже

'interOne.firstclass' does not contain a definition for 'func' and no extension method 'func' accepting a first argument of type 'interOne.firstclass' could be found (are you missing a using directive or an assembly reference?)

вот так вот он ругается на этот способ...

В reference длл-ку добавил...
PM MAIL WWW   Вверх
Dims
Дата 3.11.2008, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: нет
Всего: 11



Вы сначала напишите и отладьте то же самое в ОДНОМ проекте, но в разных namespace. И когда заработает, тогда выложьте класс в точности в DLL.

Сейчас мне кажется, что проблема в том, что метод func не является public.


PM MAIL   Вверх
Nikitozz
Дата 3.11.2008, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 19.9.2007
Где: Москва

Репутация: нет
Всего: 0



Цитата(Dims @  3.11.2008,  14:35 Найти цитируемый пост)
Сейчас мне кажется, что проблема в том, что метод func не является public.


Спасибо огромное, получилось. Ну я и тормоз, надо спать ложиться, видимо мозг уже не работает.
Dims, спасибо!!!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0716 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.