|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.08.2010, 01:20 | #1 |
Пользователь
Регистрация: 14.08.2010
Сообщений: 31
|
ASM и WinSock
И снова здрасьте.Лазил по гуглу,но так ничего вразумительного и не нашёл,кроме иходников,а нужны объяснения = (.Во всяком случае,на русском не нашёл)).Как работать с сим чудом на MASM ?( Все исходники магическим образом написаны на масм).
|
15.08.2010, 06:50 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Также как и в С, С++, Делфи... только с другим синтаксисом операторов. Это ВинАПИ.
|
15.08.2010, 07:51 | #3 | |
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
Цитата:
|
|
15.08.2010, 18:08 | #4 |
Пользователь
Регистрация: 14.08.2010
Сообщений: 31
|
Пасип за инфу,но возникла трабла с васстартапом:
wsa_ver dw 2.2,0 WSADATA ws <> invoke WSAStartup,wsa_ver,offset ws второй параметр структура и требует адрес.Также было написано,что можно параметр опустить,т.е. указать нулл или ноль. Версия - слово (WORD) Выдало: Код:
Код:
Вот только непонятно - по описанию функции,она требует указатель на структуру: int WSAStartup( WORD wVersionRequested, (in) LPWSADATA lpWSAData (out) ); А где я в коде указал структуру ?! ( Кстати,при всём желании,синтаксис её объявления знаю только nameofstruct struct nameofstruct EndS - других не знаю( ЗЫ: Судя по проототипу,всастартап принимает два параметра типа дворд и возвращает целочисленное значение,в данном случае - 0. При объявлении SOCKET и sockaddr_in,тоже выдаёт ошибки: s1 SOCKET ? s2 SOCKET ? sin1 sockaddr_in <> sin2 sockaddr_in <> в секции .data? Последний раз редактировалось Stilet; 16.08.2010 в 08:27. |
15.08.2010, 19:06 | #5 | ||||
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
нигде. ты ее не обьявил даже. исправь
"wdata dd ?" на "wData WSADATA <>" <<- это и есть. и перемести это в .data. А типа работает у тебя из за того, что ты указатель послал конечно, но указатель на что? На двойное слово. Процессору пофик чё куда пихать, указатель - это число. Вообще там на wasm.ru всё прекрасно написано. Цитата:
Цитата:
Цитата:
Цитата:
Последний раз редактировалось r9m; 15.08.2010 в 19:18. |
||||
15.08.2010, 19:18 | #6 |
Пользователь
Регистрация: 14.08.2010
Сообщений: 31
|
http_://www.ronybc.8k.com/sparcz.htm - Пример
http_://club.shelek.ru/viewart.php?id=35 - Статья На васм слишком сложно описано...Хоть и не всеми.Ищу где попроще. Ща вроде поправил ошибки вообще пропали. Не могу понять,что за *<>* такое и чем он от *?* отличается и почему *<>* нельзя применить к этим апи структурам.Последнее вроде показывает,что данные неинициализированы(пустые в общем) Да ещё и бред с типами какой-то.В С/С++ видел объявления WORD,BYTE,стоящие впереди имени переменной,хотя должно быть выражение вида имя параметира тип параметра.. Мне всего-то нужно открыть конкретный порт на своей машине,соединиться с 80-ым портом удаленного сервера,получить ответ и вывести его : ) Последний раз редактировалось Stilet; 16.08.2010 в 08:29. |
15.08.2010, 19:46 | #7 | ||
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
Цитата:
Цитата:
Ты подключил себе в проект wsock32.inc wsock32.lib ? Последний раз редактировалось r9m; 15.08.2010 в 19:48. |
||
15.08.2010, 19:49 | #8 |
Пользователь
Регистрация: 14.08.2010
Сообщений: 31
|
Ой,не заметил втоего сообщения.Да,подключил9покопавшись в описании).Пока вот что получилось:
Код:
Не знаю,как в sin_addr засунуть адрес нужного мне удаленного веб сервера(гугла к примеру). Последний раз редактировалось Wardrag; 15.08.2010 в 19:52. |
15.08.2010, 19:56 | #9 | |
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
доступ к полям структур осуществляется через точку. Нужно внимательно читать статью, ссылку на которую ты дал. Там сказано:
Цитата:
|
|
15.08.2010, 21:16 | #10 |
Пользователь
Регистрация: 14.08.2010
Сообщений: 31
|
про структуры там оч мало написано(
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Winsock | n3sh | C/C++ Сетевое программирование | 2 | 25.07.2010 17:55 |
WinSock | ImmortalAlexSan | Работа с сетью в Delphi | 7 | 06.06.2010 22:41 |
WinSock | ImmortalAlexSan | Работа с сетью в Delphi | 1 | 11.05.2010 14:42 |
WinSock | profi | Win Api | 8 | 11.01.2010 21:13 |
WinSock | Killbrum | Win Api | 1 | 18.10.2009 15:15 |