PDA

Просмотр полной версии : нужна dll


Explode
16.02.2010, 01:46
пожалуйста, помогите с задачкой:
Нужна DLL библиотека с функцией CheckPort(IP.s, Port.l, Time.l)
Которая должна проверять на доступность порт Port.l на машине с адресом IP.s
Time.l - максимально возможное время ответа от конечного сервера.
Хотелось бы чтобы все работало как можно быстрее!
Заранее спасибо!

Jingo Bo
16.02.2010, 02:52
Explode, описание - пальцем в небо, скажи к примеру как должны передаваться параметры и что значит доступность открыт или не открыт и почему именно dll?

slesh
16.02.2010, 10:26
НУ а кто не дает самому написать?
ВОТ я выкладывал статьи по кодингу сокетов. Там были небольшие примеры на то как коннектится к серваку с установленным таймаутом.
Достаточно тока собрать код и скомпилить как DLL

W!z@rD
16.02.2010, 10:30
НУ а кто не дает самому написать?
DLL

А зачем? Когда можно мозги поебать окружающим, код поклянчить, а самому впадлу что-то делать.

В таких темах 1-е сообщение должно выглядеть примерно так:
"Напишите мне вот это и это, я сам нихуя не хочу делать, вот."

Explode
16.02.2010, 13:36
я не могу dll'ки писать. ладно, попрошу где нибудь в другом месте

Jingo Bo
16.02.2010, 14:46
Хм....А ведь где нить и помогут, а сам так и не научится

gold-goblin
16.02.2010, 15:05
я не могу dll'ки писать
Хм религия не позволяет?

AlexTheC0d3r
16.02.2010, 15:11
Лучше человеку показать как ловить рыбу, а не дать ему ее...

Explode
16.02.2010, 15:16
Лучше человеку показать как ловить рыбу, а не дать ему ее...
угу, нашел вроде инфу по тому что мне надо, скачал C++ Builder 6, но блин чего то не получается создать не одной DLL - посли компиляции они не открываются даже для просмотра списка функций.

Kaimi
16.02.2010, 15:20
но блин чего то не получается создать не одной DLL - посли компиляции они не открываются даже для просмотра списка функций.

Код в студию. И что значит не открываются, чем открываешь?

Explode
16.02.2010, 15:25
Код в студию. И что значит не открываются, чем открываешь?
Ды какой код то - даже если создать пустую DLL такая же фигня...
Открываю в другом языке программирования через соответствующую функцию (подключение DLL к проекту). Can't open DLL... :(

W!z@rD
16.02.2010, 15:31
>>Открываю в другом языке программирования через соответствующую функцию (подключение DLL к проекту). Can't open DLL...

??????????????????
что-то я тебя не понимаю. Reference?
Как ты ее открываешь? Скрины давай.

Explode
16.02.2010, 15:39
Язык PureBasic. Кусок кода:

If OpenLibrary(0, "mylib.dll")
...
else
MessageRequester("Error","Can't open library!")
End
endif


OpenLibrary открывает библиотеку для дальнейшей работы с ней. Вот не могу открыть ту что создает C++ Builder 6. К примеру shell32.dll легко открывается...

gold-goblin
16.02.2010, 15:58
Ты код свое длл дай...

Explode
16.02.2010, 16:06
Ты код свое длл дай...
Код то дефолтовый (создан с помощью DLL Wizard'a). Ну и для теста добавлена одна функция-пустышка:

int Test()
{
return 1;
}

Jingo Bo
16.02.2010, 16:48
Открываю в другом языке программирования через соответствующую функцию (подключение DLL к проекту). Can't open DLL...
??????????????????
Дальше идёт PROFIT:)
OpenLibrary открывает библиотеку для дальнейшей работы с ней. Вот не могу открыть ту что создает C++ Builder 6. К примеру shell32.dll легко открывается...
Если тебе компилятор таки выплянул DLL, то уже в любом случае он может погружаться(за исключением если в DLL кривой код инциализации). Так что помоему он пудрит мозги что бы таки DLL ему сделали:))

MaSTeR GэN
17.02.2010, 01:21
я конечно дико извиняюсь но вопрос к ТС дедушка гугл уже не помогает ? или всё таки лень ? :)

slesh
17.02.2010, 10:11
Или для примера возьми мою DLL работы с аськой.
Исходник на Си (под MS C Compiler). В ней есть работа с сетью. Осталось выкинуть всё лишнее что работает с аськой и добавить одну команду установки таймаута. А так там всё есть уже. Ну и переименовать импортируемые функции.

cheater_man
17.02.2010, 21:52
Если ты делаешь в VisualStudio(C++ или C#), то тебе её нужно сначала подключить в Project->Add preference->Browse и тут собственно выбираешь свою dll, потом в исходнике пишешь using namespace_твоей_dll'ки.И это только один из вариантов.