Форум: "Система";
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];
ВнизKernel32 Найти похожие ветки
← →
Dennisius (2002-06-20 17:39) [0]Помогите, можно ли подключится к kernel32.dll через сокеты и если можно как ?
← →
ZZ (2002-06-20 17:45) [1]Ну это ще очень просто.. подключаешся через сокеты к 45612 порту, на котором как раз висит kernel32.dll.
← →
Digitman (2002-06-21 08:49) [2]>Dennisius
Что есть по-твоему "подключиться" к DLL "через сокеты" ?
>ZZ
Чего-чего ???
Кто на ком висит, с каких пор и по какому поводу ? И что это за сервис, ассоциированный с поротм 45612 ?
← →
ZZ (2002-06-21 09:21) [3]Сервис KERNEL32 висит именно на этом порту :) Висит уже давно... Так что подключайтесь и пользуйтесь
← →
Digitman (2002-06-21 10:30) [4]>ZZ
Каким же RFC, позволь уж полюбопытствовать, регламентирован данный "сервис" ? Что и при каких условиях он предоставляет по-твоему ?
← →
Fiend (2002-06-21 11:24) [5]По моему ЗЗ просто издевается , или прикалывается над людьми
← →
ZZ (2002-06-21 12:04) [6]Digitman
В общем посылаешь в сокет текстовое сообщение (но тольно в Unicode!! А то многие ошибку делают) в любом виде Например, "хочу создать файло vasya.txt на диске D" и файл таки создается. (Естественно это если винда русская, в англ - соотв. по английски ). Все просто. Все подробности в МСДН..
← →
Digitman (2002-06-21 13:07) [7]1. При чем здесь собственно kernel32.dll - то ? Это модуль, в котором реализованы базовые ф-ции Win32-ядра, к коим реализация Winsock-подсистемы (зависящая от kernel32 , но не наоборот !) не имеет никакого отношения. Иными словами - ядро не зависит от наличия или отсутствия в системе установленного стека TCP-протоколов. В частном случае система вообще может не использовать TCP-протокол для сетевого взаимодействия ни по одному из подключаемых ей сетевых интерфейсом. И ядро прекрасно обходится без всего этого.
2. Вот тебе ссылка
http://www.iana.org/assignments/port-numbers
Не сподобишься ли процитировать строчку из перечисленных там списков среди следующих :
The Well Known Ports are those from 0 through 1023.
The Registered Ports are those from 1024 through 49151
The Dynamic and/or Private Ports are those from 49152 through 65535
???
Ведь ты ж пеняешь на MSDN, а, значит, упомянутый тобой документированный Microsoft"ом сервис просто обязан присутствовать в одном из этих списков...
← →
Sasha9 (2002-06-21 13:11) [8]2Dennisius
а ты сам-то понял что сказал?
← →
ZZ (2002-06-21 17:01) [9]Ну в общем я тут писал и случайно закрыл окно :( Поэтому будут краток :)
1. Начиная с вин98 все и вся в ос очень тесно связано с инетом (веб содержимое на рабочем столе и т.д.). И кернел32 (который кстати не ядро виндовса вроде) не исключение. Он использует сокеты для (некоего аналога) сервиса LPC (Local Procedure Call) и предоставляет "сервис" именованных каналов (Named Pipes) (а в 98 они реализованы только как локальные). И все это не зависимо от установленных в системе TCP протоколов. В рамках этого сервиса Kernel32 предоставляет выполнение функций через LPC порт методом, описанным мною выше.
Естественно, работать это будет в пределах одного компа и не будет работать по сети (даже с установленным TCP :)
2.
# 45055-45677 Unassigned !!!
А про его задокументированность я в общем и не говорил.
ЗЫ. А что это за организация такая интересная ( http://www.iana.org/ )? Может зарегистрировать за собой какой нибудь порт :)
← →
Digitman (2002-06-21 18:13) [10]>ZZ
>>"про его задокументированность я в общем и не говорил."
Да что ты говоришь !!?? Ну надо же ) ... я то, тундра, сижу тут и молюсь на MSDN : типо, где уж как не в MSDN можно отыскать официальную и более-менее достоверную информацию обо всем "творчестве" от MS))... в т.ч. и об интерфейсе/"потрохах" kernel32.dll)))
>>"организация такая интересная"
Интересна она, сударь, не тем, что туда сломя голову нужно бежать регистрировать чего-то там, а единственно тем, что
информация об устойчивых сервисах там постоянно обновляется и на сей момент достаточно свежая. А уж о "несвежести" того, что являет собой упомянутое тобой инф.содержимое MSDN, можно складывать легенды. И тем более странно, что инф-ция о сем "сказочном" сервисе, якобы упоминаемом в MSDN (начиная с выхода в свет первого Маздая, а , значит, и kernel32.dll в его составе), до сих пор (сколько лет-то уже прошло !) отсутствует на подобного рода информационных порталах.
Таки, может, и ссылочку представишь на "Все подробности в МСДН" ? Особливо желательно - касаемые разделов, посвященным LPC-механизму ? И - крайне интересно - те, где еще и встречаются слова "socket", "port"
И еще - не сподобишься ли пояснить, каким же образом автору по твоему совету можно подключиться к "LPC порту", якобы имеющему номер 45612, если автор подразумевает именно Berkley Sockets (я надеюсь) , а не нечто иное, неизвестное мне, но называемое тобой "сокеты" ? Фрагмент кода очень не помешал бы)...
← →
ZZ (2002-06-21 18:56) [11]Да что ты говоришь !!?? Ну надо же ) ... я то, тундра, сижу тут и молюсь на MSDN : типо, где уж как не в MSDN можно отыскать официальную и более-менее достоверную информацию обо всем "творчестве" от MS))...
Да уж.. наивняк однако...
начиная с выхода в свет первого Маздая, а , значит, и kernel32.dll в его составе
Я по моему по русски написал "Начиная с вин98".
отсутствует на подобного рода информационных порталах.
Одним словом Undocumented. Кстати насчет отсутствует - Dennisius откуда то это узнал. Не я же ему об этом рассказал...
Таки, может, и ссылочку представишь на "Все подробности в МСДН"
Таки врядли. У меня траффик в сторону майкрософт больно дорогой...
можно подключиться к LPC порту
Сочиняешь однако :) Я про LPC порт вроде ничего не писал. Именно обычные сокеты...
Фрагмент кода очень не помешал бы)...
var
CS : TClientSocket;
CS:=TClientSocket.Create(...);
И т.д. А что посылать я уже писал.
Интересна она, сударь, не тем, что туда сломя голову...и т.д.
На заборе тоже написано. Я спрашивал, что это за организация и насколько она официальна?
← →
Dennisius (2002-06-21 19:57) [12]
> ZZ
Подскажи формат строки для Вася.тхт :)
← →
Digitman (2002-06-24 13:22) [13]ZZ © (21.06.02 17:01)
1.
>>"..Kernel32 предоставляет выполнение функций через LPC порт .."
ZZ © (21.06.02 18:56)
>>Я про LPC порт вроде ничего не писал
И как сие понимать ? См. bold-текст в цитате твоей же реплики.
2. Удали-ка ты на время все сетевые интерфейсы/протоколы и т.п. из конфигурации своей локальной машины, работающей под Маздаем (по барабану - Win9x или WinMe, в прочем и под НТ то же самое должно быть) и попробуй свой же код параметрами
CS.Address = "127.0.0.1"
CS.Port = 45612
При попытке CS.Open кроме всех прочих исключений (в разных вариациях) ты получишь WSAEPROTONOSUPPORT. Это в лучшем случае.
В худшем же (а скорее всего худший случай и есть при таком раскладе) первая же строчка
ErrorCode := WSAStartup($0101, WSAData)
в процедуре Startup вернет тебе ошибку невозможности инициализации Winsock-подсистемы.
Так о каких же "Именно обычных сокетах" ты речь ведешь, коль тот самый экз-р класса TClientSocket (это ты ЕГО "обычным сокетом" называешь что ли ?) при выполнении метода Open обязательно даст отказ из-за невозможности инициализации ?
← →
ZZ (2002-06-24 16:33) [14]Digitman ©
функций через LPC порт методом,
2.
Это я, а то kernel винды!!!
это ты ЕГО "обычным сокетом" называешь что ли ?)
Именно его (не компонент же, а то с чем он работает). Могу еще функцию socket назвать. Или это не обычные сокеты?
← →
Digitman (2002-06-24 18:24) [15]>ZZ
> Это я, а то kernel винды!!!
Слушай, сударь, не морочь человеку голову ! Где твои аргументы ? Конкретные ?
Ведь - ни одного ! Пустая болтовня до сих пор ...
> Могу еще функцию socket назвать
Да называй что и как тебе угодно ! Хоть socket хоть "гнездо" ... Суть от этого не меняется : прежде чем вызвать любую ф-цию из интерфейса Winsock (дабы впоследствии попытаться осуществить любого рода коннект) требуется инициализация интерфейса, а именно - WSAStartup(). Без инициализации WinsockAPI любые попытки обращения к нему бессмысленны и терпят крах !
Приведи же контраргументы, отрицающие необходимость всякой инициализации, либо факт, говорящий о возможности успешного установления соединения без конфигурирования системы на предмет подключения вышеуказанных сетевых компонентов / протоколов. Тогда и разговор серьезный будет ...
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.007 c