Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
20.04.2024
Размер:
13.23 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

t

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

NOW!

r

 

 

 

 

 

 

 

NOW!

r

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

m

 

 

 

w

 

 

 

 

 

 

 

 

 

m

w Click

 

 

 

 

 

 

o

 

 

 

w Click

 

 

 

 

 

 

o

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<???>Îäèí... ý-ý-ý...

 

<???>Меня достает

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нехороший человек

 

периодически вылеза-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

подписал меня на пор-

 

ющая ерунда, которая

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

носайт. Теперь каждый

 

хочет соединить меня с

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

день приходит куча пи-

 

Инетом, обычно в са-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сем. Уже все это доста-

 

мом начале после за-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ло. Пользуюсь я

 

грузки Windows Me; я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Outlook Express, íå

 

óæå âåñü msconfig ïåðå-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

знаю, вроде все заша-

 

лазил, а она все появ-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ðèë â ýòîì Outlook’e, íî

 

ляется и так усердно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

не могу найти фильт-

 

просит соединиться.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ры, как можно избавит-

 

Подскажи, что делать?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ся от этих писем? Пы-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тался отписаться, дак

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ñàéò íå çíàþ!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н: Искать еще. Где-то должна быть прога, которая

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обращается к Инету. Можно еще залезть в свойства

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обозревателя (в IE выбрать “Сервис-Свойства обо-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н: У тебя ящик на mail.ru, и это намного облег-

зревателя”) и на закладке “Подключение” отключить

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

автоматический дозвон (Выбрать “Не использовать”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чает дело. Зайди на www.mail.ru через браузер,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выбранные соединения).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

войди в ящик, выдели письмо с порносайта и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нажми “добавить в черный список”. После этого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

такие шедевры будут автоматически удаляться

 

<???>Что такое дест-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

еще на сервере, не доходя до тебя.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

руктивный код?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Эти вопросы меня уже

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

достали

H: Это код программы, который приводит к дест-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<???> Могут ли меня поймать, если я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

руктивным действиям. Непонятно? Попробую еще

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сделаю то-то...

 

раз - это участок программы, который делает унич-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н: Ты знаешь, в Управлении Р сидят да-

тожения. Непонятно? Пробую еще раз, это какая-то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

леко не идиоты. Насколько мне извест-

функция, которая делает что-то нехорошее. Наде-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

но, там даже есть наши братья хакеры.

юсь, что какое-то из этих объяснений понятно, по-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Неужели ты думаешь, что ты умнее

тому что я не знаю, что ты нашел сложного в поня-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

всех? Если наша доблестная захочет, то

тии “деструктивный код”. Может, ты не понимаешь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

поймает тебя за пять сек. Но и не стоит

слово “деструктивный”? Так оно означает разруше-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

думать, что именно тебя будут ловить.

ние. Может, это для меня так очевидно? Но ты не

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Во-первых, не всегда поступают заявле-

стесняйся этого, я тоже плохо понимаю большин-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ния в Управление Р, потому что многие

ство заумных терминов. Помню, как я долго и нуд-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

хотят скрыть факт взлома или разо-

но не мог понять, что такое консенсус, пока мне не

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

браться с обидчиком самостоятельно. В

объяснили. Я вообще не понимаю, почему мы не

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

этом случае шанс выловить тебя сильно

можем говорить понятным русским языком, а ис-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

уменьшается, потому что ловлей будут

пользуем заумные иностранные слова?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

заниматься далеко не профессионалы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Во-вторых, само Управление может не

 

<???>Можно через

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

захотеть заниматься тобой из-за мелоч-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ности преступления и несовершенства

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нашего законодательства. Просто даже

 

прокси получать(от-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если тебя поймают, посадить на какой-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

правлять) письма или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нибудь срок очень тяжело. Если в Уп-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

равлении сидят продвинутые типы, то в

 

играть в CS?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

суде попадаются абсолютно непонима-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ющие люди, которым объяснить что-то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

очень тяжело. Вот поэтому Управление

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

часто закрывает глаза на те вещи, кото-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рые могут заткнуться на пути в суд. За-

H: Если прокся и нужная тебе прога умеют это де-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чем им нужен очередной висяк не по их

лать, то можно все. Просто некоторые прокси

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

âèíå?

 

предназначены только для HTTP, а некоторые мо-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Когда ты что-то взламываешь, то дол-

гут и мыло пропускать. А вот насчет прокси для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

жен отдавать себе отчет в том, что со-

CS я не слышал, может быть и есть, но я не уве-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вершаешь преступление и можешь быть

рен в такой роскоши.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

наказан. С другой стороны, наказания

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

может и не быть. Вот и думай, стоит ли

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рисковать?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5 Кодинг

6 Hack-Faq

7 JoyStick

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

w

 

 

to

 

 

 

 

 

o

 

 

 

 

 

 

X-Стиль

P

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

«ПОЛНЫЙ ПЭ»

Даня Шеповалов (dan@real.xakep.ru, www.danya.ru)

Для тех, кого вообще из койки не выпускают, т.к. лень ремни удерживающие расстегивать, поясню: есть у нас на родине мега-человек, и зовут его Гоблин. Когда-то он был самым крутым журналистом, писавшим о Кваке (кстати, и в ][ Гоблин отметился), потом самым крутым переводчиком игр, а теперь самый крутой переводчик фильмов. То, что ты смотрел на видео, в кинотеатрах и тем более по телевизору - слив полный, со всеми этими переводами типа "мне все равно" на фразу "I'm don't fucking care about any motherfucking body". Гоблин же пошел другим путем и переводит все так, как в действительности говорят герои. Если это мат, то и в русской

версии - мат, если это евреи, то и в русской версии это голос с еврейским акцентом и т.д. Те, кто не видел ни одного фильма с его переводом, могут грустно вздыхать, вы пропустили

полжизни мимо. Остальные, думаю, уже протащились от "Спиз...ли" и "Цельнометаллической Оболочки".

][: Как вообще появилась идея заняться переводами?

>Goblin: Есть у меня дружбан по имени Вован. Знаю его давно, но жизнь сложилась так, что я трудился в уголовке, а Вован - в конкурирующей организации. И вот прикупил Вован себе немыслимого качества видеомагнитофон, штуку баксов стоил. А если ты по-англий- ски хотя бы три слова понимаешь, то смотреть фильмы, переведенные нашими умельцами, просто невыносимо. Вот мы и решили сами заняться переводами блокбастеров: "Чужие" там, "Криминальное чтиво", вестерны всякие. А на DVD гдето с год назад перешел, для чего приобрел дивидюк Toshiba аж за 140$.

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

][: Откуда ты так хорошо

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

знаешь английский? Гей-

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

мерский опыт?

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

>Goblin: Íå-à. Просто ïðè

df

-x cha

 

e

 

 

 

 

 

 

 

n

 

 

 

советской власти все нор- мальные новости были англоязычными. Естественно, хотелось знать, че там и как. Ну и правильные книжки читал, фантастику западную. Будешь смеяться, но закончил я двухгодичные курсы при ДК милиции, да.

][: Какого персонажа тебе, как бывшему оперу, было интереснее всего озвучивать? Небось, инструктора по боевой подготовке из фильма "Цельнометаллическая оболоч- ка"? Там ты фактически побил все рекорды по художественному мату.

>Goblin: Ну, в общем - да. Я сам в Красной Армии сержантом был, так что это близкая сердцу тема. А инструктор, он не актер на самом деле. Кубрик достойного кандидата на роль долго искал. В их числе оказался настоящий сержант

Вопросы

задавал

 

 

 

Äàíÿ

 

 

 

Шеповалов

Студия

 

 

«Полный

 

 

 

ÏÝ»

 

ИНТЕРВЬЮ

 

 

 

представляет

 

 

 

...

 

 

 

 

 

 

 

 

 

Ñ

 

ГОБЛИНОМ

 

 

 

 

 

 

 

 

 

 

 

 

 

ÑÑÛË

 

ÒÅÌÅ:

 

 

 

 

 

 

 

 

 

 

ÊÈ ÏÎ

 

 

Переводы

Ãîáë

 

 

 

 

http://

 

 

 

 

MP3:

 

 

Голосо

dvdspecial.

 

 

 

èíà â

 

 

 

"×üè

 

 

ru/perevod.

 

 

 

 

 

вание

ïåðå

 

phtml?keywor

 

 

 

dvdspecial.

 

âîäû

 

 

âñåõ":

d=&perevo

 

 

 

круче

 

d=Goblin&x=0&y=0

http://

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ru/voiting.

 

 

 

 

 

 

 

 

 

 

 

 

 

phtml?voiting

id=29

 

 

 

 

 

 

 

 

 

 

 

 

70 Ньюсы 1 Феррум 2 PC_Zone 3 X-Стиль 4 Взлом

 

 

 

 

hang

e

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

d

 

 

F

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

морской пехоты, который

w

 

 

to

двадцать пять лет новобран-

w Click

 

 

 

 

 

 

 

 

 

 

m

 

w

 

 

 

 

öåâ oвоспитывал. Кубрик гово-

 

.

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

 

e

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

рит: типа, попробуйте что-ни-

 

 

 

 

-xcha

 

 

 

будь в камеру сказать. Сержант рот открыл, да как понес... Ну, ты кино уже смотрел, так что сам слышал. Народ в шоке был, и его тут же на роль взяли.

][: Ты по ходу каждый фильм серьезно изучаешь перед тем, как начать переводить?

>Goblin: Ага. Досконально. Вообще, тут множество всяких тонкостей есть. Например, русский язык, он в принципе на двадцать пять процентов "длиннее", чем английский. То есть у них слова одно-двухсложные, а у нас ощутимо длиннее. Далеко не каждому дано излагать мысли кратко и афористично, а в переводе это еще сложнее. Поэтому местами надо говорить очень быстро, чтобы поспевать за героем. В целом при переводе я смотрю фильм больше десяти раз: сначала пару раз для ознакомления, потом - когда перевожу, затем наговариваю текст - опять смотрю. Потом с "приклеенным" звуком пересматриваю и выявляю ошибки. Потом еще пяти-шести сведущим людям даю поглядеть - они ткнут пальцем в то, чего не заметил сам. Кстати, когда несколько раз смотришь ка- кой-нибудь чудовищный отстой типа той же "Кобры", то начинаешь находить в нем классные моменты.

][: Слушай, Гоблин, стопудово ты спец в переводе ругательств. Разреши давний спор: круче ли русский язык, чем английский, в плане мата?

>Goblin: Ну, вообще, если человек заявляет, что у них всего два слова есть: "фак" и "щит", это говорит только о

том, что гражданин не знаком с предметом в принципе. Для примера, "фак" одним словом ты далеко не всегда переведешь - все зависит от того, как предложение построено. Естественно, далеко не все строят их грамотно. Вот господин сержант в "Цельнометаллической оболочке" предметом владеет. Категорически. Он отлично знает, как побогаче все завернуть, обозвать, унизить - это ж то же самое ораторское искусство. Для американцев, кстати, подобное владение языком не характерно, ибо в большинстве своем они неместные (испанцы, немцы да китайцы всякие). Подобный полет фантазии встретишь редко. Но, тем не менее, рассуждения о том, где хуже, где луч- ше, проистекают от неправильного понимания и недостаточных знаний. Везде все замечательно с ругательствами обстоит, надо просто шарить в предмете.

][: Какой фильм дался тебе сложнее всего и почему?

>Goblin: Опять же "Цельнометаллическая оболочка". Я, конечно, старый солдат, но там зверское количество жаргонизмов всяких. Когда вояки друг с другом разговаривают - напрягаюсь. Однако добрые люди разыскали че- ловека, который во Вьетнаме в то время служил, настоящего морпеха. Вот он и разъяснил, что к чему.

][: А переводами игр ты занимаешься? Это же вроде больше по твоей специальности...

>Goblin: Есть чутка. Года полтора назад забабахал "Горький-18". Просто "Горь- кий-17", поляками сочиненный, с моей точки зрения, имел довольно нездоровый антирусский душок. Ну, они нашей былой имперской мощью ушибленные, их можно понять. Но и я там поураганил от души, изменил диалоги, поглумился над сюжетом. Еще "Серьезного Сэма" второго переводил, недавно как раз вышел - мое клеймо на обложке присутствует.

][: Перевод какого фильма ты считаешь лучшим?

Goblin: Лучше всех получился "Snatch". (В переводе Гоблина "Snatch" звучит как "Спиз...ли". Другие перевод- чики ошибочно обозвали этот фильм "Большим Кушем"). Там же негодяи сплошные, а данный контингент я отлично знаю: как кричать, с какими интонациями. Так что есть мнение, что "Snatch" самым бодрым получился.

][: Вообще, опыт старшего опера помогает в работе?

>Goblin: Не столько помогает, сколько накладывает тяжкий отпечаток, хы-хы. Есть такая шутка: "на фотографии видны уши фотографа". Так и в переводе всегда заметна личность переводчика. А поскольку я личность мрачная и достаточно злобная, то это существенно отражается на моих работах.

][: Сколько времени уходит на перевод одного фильма?

>Goblin: Неделя. Технологически на сам перевод уходит три дня (часа по четыре в день), а на окончательную доводку до ума - еще дня три-четыре. Быстрее никак не получается, другие дела тоже надо делать. Много времени отнимают вещи непереводимые. Вот, например, помнишь пряничный че- ловечек в Шреке говорит "Eat me!". Для детей это значит "Съешь меня!", а на сленге - "отс...и у меня!". Ну как такое переведешь?

][: На дисках с твоими работами стоит надпись "Переведено с особым цинизмом". Какой смысл ты вкладываешь в эту фразу?

>Goblin: Поясняю на примере. Если ты помочился на забор, это будет хулиганство. А если ты при этом повернулся к гражданам лицом и сделал то же самое, то это называется "Те же действия, совершенные с особым цинизмом". А вообще - просто смешная фраза.

][: Какое оборудование и софт ты используешь в своей работе?

>Goblin: P4 на 1.4Ггц, мать ASUS, 512 RIMM, пара винтов на 60Gb каждый, Sound Blaster, микрофон Behringer. Из софта: Sound Forge. Все просто.

][: Кстати, переводы - это прибыльное дело или нет?

>Goblin: Да как-то не особо. Официально за это платят 50$. За фильм. Но, вообще, все зависит того, какого ты уровня переводчик и с кем ты дружишь. Поскольку я в этом деле не пацан, денег платят нормально. В принципе, никто из "титанов от филологии" этим делом не занимается. Потому имеем стадо халтурщиков. Слили из сети рипнутый фильм, позвали "толкового" студента из общаги - ну-ка быстро переведи! Тот наушники напялил, стакан для легкости речи принял и забацал известно что. Тут ведь главное - первыми все это дело на прилавок выложить и бабло срубить. А я

стараюсь делать максимально адекватный и, если можно так сказать, точный перевод.

Кстати, считаю, что дублировать фильмы нельзя категорически. Скажем, голос Арнольда имеет специфический тембр плюс тяжелый немецкий акцент (типа немец в советской деревне: "Яйки, кура, масло" - все дела). Потому правильный подход - это голос за кадром. А самый правильный - это вообще субтитры, однако массовый зритель их не приемлет.

][: А ты не пробовал работать на какие-нибудь крупные компании, занимающиеся видео? Или там уже нет такой свободы слова?

>Goblin: Там существует жесткая цензурная позиция, на мой взгляд - совершенно глупая. Есть мнение, что на фильме следует писать: детям до восемнадцати лет смотреть не рекомендуется. Подходишь по возрастному ограничению - смотри на здоровье. Нет - до свидания. Я думаю, в восемнадцать лет молодого человека сложно поразить или шокировать "нехорошими словами". Он сам кого хочешь поразит. Это, на мой взгляд, уже прерогатива режиссера: решать, кто у него как и о чем говорит. А вовсе не цензора. Тем более, что все фильмы - разные. Ты "Шрека" смотрел ведь, там непечатные слова отсутствуют как таковые, это ж детский мультфильм. А "Snatch" - фильм про бандитов и негодяев, и разговаривают они там, как в жизни. Ну, я так и перевожу. Конечно, там красок подбавлено, но фильм от этого только веселее становится. В больших же студиях все тут же начинают махать руками и кричать: "Так нельзя!". И ножницами - чик! Сразу становится "как положено". Но ведь это сразу выхолащивает саму суть фильма. Возьми, например, "Криминальное чтиво - предмет всеобщих восторгов, очень веселый фильм, по ОРТ нет-нет да и покажут. Но когда я свой вариант перевода людям ставлю, те час сидят с вытянувшимися физиономиями: "Да как же так?!". А вот так! Фильм - про негодяев, которые и ведут себя как негодяи, людей убивают. Смешного там мало. А то, что есть, смешно далеко не для всех. Считаю, что я просто даю людям возможность взглянуть на все это дело под совершенно другим углом. Углом адекватного перевода. Я счи- таю, что люди не видят фильмы такими, какие они на самом деле есть. Если ты "От заката до рассвета" по ОРТ

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

смотрел, то у тебя наверняка

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

÷òî òàì

 

 

 

 

 

сложилось мнение, w

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

два таких прикольных пацана-

 

 

o

 

 

w

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

весельчака: Тарантино и Клу-

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

ни. Разъезжают, острят там туда-сюда. Короче, складывается впечатление, что это комедия какая-то. А господин Родригес, который кино снимал, в первой половине показывает отвратных мразей, которые затем попадают в такую жуткую ситуацию, что поневоле даже начинают вызывать симпатию. В моем переводе оно так и выглядит. В переводе ОРТ - с точностью до наоборот.

][: Какие отзывы по поводу своих переводов ты полу- чаешь чаще: гневные письма от пенсионерок или хвалебные гимны от циничных программеров?

>Goblin: Поначалу, когда мое правое дело только проникло в компьютерные массы, граждане начали учить меня русскому языку: дескать, ты какие-то слова неизвестные употребляешь. Типа - слова "проставиться" (в плане алкоголя) мы не знаем, это какой-то местечковый жаргонизм и т.д. Ну, фиг знает, ребята. Я трудился в тюрьме на много тысяч посадочных мест и видел людей отовсюду: начиная от Воркуты и заканчивая Занзибаром и Шри-Ланкой. И все они по- чему-то знали слово "проставиться", да. Но в целом отзывы диаметрально противоположные: одни - в восторге, другие - негодуют.

][: Что думают твоя жена и сын по поводу работ студии "Полный ПЭ"?

>Goblin: Женщина не одобряет категорически. "Snatch" я ее посмотреть заставил. Говорит - понравилось, но больше ничего показать не просит, хе-хе. Когда я рычал в микрофон "арию сержанта" из "Цельнометаллической оболочки", она на меня потом с изменившимся лицом посмотрела и сказала: "Дима, я никогда не думала, что ты ВОТ ТАК можешь". А подросток спокойно смотрит все. Правда, строго в наушниках.

-Faq 7 JoyStick 8 Юниты 9 Quit> 71

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

w

 

 

to

 

 

 

 

 

o

 

 

 

 

 

 

X-Стиль

P

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

HACKWEAR, ИЛИ КАК ОДЕТЬСЯ ХАЦКЕРУ

LuidZy è C. Jay

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

HackWear,

или как одеться

хацкеру

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если ты читаешь Х, то это, конечно, еще ничего не значит. Ведь вдруг ты его

купил

 

ради очередного обзора игр, описания

железа, новых анекдотов

èëè ïî-

 

настоящему стоящей вещи -

. Cкорее всего,

ТЫ даже забыл о кульной

 

рекламы

 

... о рубрике Х-Стиль. Так

 

рубрике, реально интересной

 

 

 

каждому стильному челу

 

чем фотки с

 

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

 

 

 

 

 

обнаженной Бритни (что маловероятно

:), то было бы круто

и выглядеть

 

. Но возникает

вопрос: как это сделать? Можно, конечно, пройтись

 

соответственно

 

 

 

 

 

бутик. Но

 

по secondhand`ам, клевым рокерским магазам или зайти в какой-нибудь

 

разве этот путь подходит тебе? Ты же продвинутый чел... Включай

мозги и читай

 

 

 

 

-магазинах, торгующих

 

. В ней мы расскажем тебе об интернет

 

 

 

 

 

эту статью дальше

 

 

 

äëÿ òåáÿ.

 

весьма специфичной одеждой... одеждой для хацкеров... одеждой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

72 Ньюсы 1 Феррум 2 PC_Zone 3 X-Стиль 4 Взлом

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

NOW!

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

BUY

 

X-Стиль

 

 

 

Geekstuff

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

Íó

÷òî

æ,

приступим.

w Click

 

 

 

 

 

 

o

m

 

Первый

магазин, который

 

w

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

ìû

решили

включить в

 

 

 

 

HACKWEAR, ИЛИ КАК ОДЕТЬСЯ ХАЦКЕРУ

 

 

 

 

статью,

 

называется

 

 

 

 

 

 

 

 

 

 

 

 

 

Geekstuff

(geekstuff.com).

LuidZy è C. Jay

Впервые зайдя на страничку этого проекта, понимаешь, что авторы не особо утруждали себя работой над дезигном сайта. "Может быть, это и правильно - ведь это же интернет-магазин.

Ставка наверняка делалась на выбор одежды", - сказали мы себе, надеясь в дальнейшем увидеть действительно широкий ассортимент и качественную продукцию. Но не тут-то было: зашли в раздел, где были выставлены на продажу футболки, и в нашем броузере появилось всего шесть футболок :(. И все они для кодеров и для линуксоидов. Да, широтой ассортимента, как мы смели предположить, данный проект не обладал. Что касается головных уборов, а именно бейсболок, то их здесь имеется достаточное количество для того, чтобы сделать выбор (5 различных моделей). Единственная вещь, которая порадовала нас (да и которая, скорее всего, порадует многих людей, которые кодят на Перле) - это размещение на сайте этого проекта "фирменной" одежды клуба юзверей Перла, именующегося Perl Mongers (типа Торговцы Перлом). Одежды от этого клуба также немного: две футболки и две бейсболки. Но по качеству они намного лучше, чем ранее представленные нами футболки. Любой кодер Перла будет выглядеть в них просто великолепно :). Что касается цен, то средняя цена за футболку - 15 бакинских, за бейсболку - столько же. Доставка в Россию,

разумеется, почтой.

ПЛЮСЫ: эксклюзивная продукция от клуба Perl Mongers, прикольные бейсболки.

МИНУСЫ: мало футболок, нет теплых вещей.

LinuxShop

Следующий проект, о котором пойдет речь, носит скромное название LinuxShop (linuxshop.ru). Сайт сделан грамотно, что, конечно же, не может не радовать нас, тем более, что это российский интернет-

магазин. На фоне с предыдущим он выглядит довольно-таки прилично. Да и что касается одежды (футболки, бейсболки) - выбор будет действительно побольше. Всего в ассортименте этого магаза

представлено около 45 футболок и всего лишь одна бейсболка. Также можем сказать, что магазин не останавливается на достигнутом и постоянно увеличивает количество своей "продукции". Ты, наверное, скажешь: "Посмотрите на

название этого проекта - LinuxShop! Я ведь не линуксоид, и мне тут делать нечего!". И ты ошибешься, так как в этом магазине ты наверняка найдешь себе что-нибудь по душе. Предлагаются футболки по следующим тематикам: операционные системы, философия Open Source, кодинг, serious fun (этот раздел радует нас в особенности :). Также недавно был добавлен раздел с так называемыми High quality T-shirts (высококачественными футболками). Если говорить о самом волнующем для тебя моменте - о цене всех этих футболок, то нельзя назвать цены очень-то высокими: 250 русских тугриков за футболку - это вполне разумно! Учитывая то, что если ты живешь в столице - то доставят тебе твою покупку прямо домой в целости и сохранности

совершенно бесплатно. Ну а если ты живешь

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

другом городе, то жди посылку.

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

Если тебя порадовал этот проект, тогда смело набивай в своем броузере lin-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

o

m

uxshop.ru и делай свой выбор! Кстати, главред Х, SINtez, - один из постоянныхw

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

g

.c

 

клиентов этого магазина.

 

p

 

-x cha

 

 

 

 

 

df

 

e

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

ПЛЮСЫ: есть из чего выбирать, невысокие цены.

МИНУСЫ: в ассортименте нет теплой одежды, скудный выбор головных уборов

.

ThinkGeek

Напоследок мы расскажем тебе еще об одном проекте, который мы были просто обязаны включить в наш превю. Почему обязаны? Все это лишь потому, что по сравнению со своими конкурентами этот магазин является явным фаворитом. Здесь все сделано "как надо": впечатляет и сайт (thinkgeek.com), и сама одежда, которой здесь ты найдешь великое множество. Вот на этом давай остановимся поподробнее. Магазин разделен на шесть виртуальных отделов: футболки, одежда для работы, одежда для девушек (для девушек-хакеров, разумеется :), теплая одежда, головные уборы, одежда для детей. Кроме того, раздел футболки имеет еще пять подразделов (футболки для кодеров, хакеров, админов, вебмастеров и т.д.). Также мы были приятно удивлены тем, что в продаже присутствуют галстуки околохакерской тематики!!! В каждом разделе ты найдешь около десяти различных товаров! Теперь пораскинь своими мозгами и посчитай, какой ассортимент получается у этого магазина... Нехило выходит. Да, что сказать, ребята постарались. Цены на все ЭТО варьируются от 15 до 25 условных единиц. Доставка - почтой. Если выбор одежды в ранее представленных нами интернет-магазинах показался тебе скудным, то этот проект создан специально для тебя. Так что не отчаивайся и заходит на thinkgeek.com, и ты обязательно найдешь что-нибудь подходящее для себя!

ПЛЮСЫ: огромнейший выбор, присутствует теплая одежда. МИНУСЫ: высокие цены.

Апдейт

"Эх, ребята, клевая получилась статья, но написали далеко не про все", - сказал Синтез и застучал по клавиатуре. Этот абзац от него.

Итак, забыли ErrorWear (www.errorwear.com) - офигенный магазин по продаже маек с различными комповыми ошибками. Всякие Error 404 - слив, это нам не нужно, а вот Blue Screen Of Death (синий экран смерти) - это офигенно. "Как они его запринтскринили? Из-под VMWare что ли?" - спрашивал я Центнера. "Тормоз! Они его в Фотошопе нарисовали!" - ответил он мне :).

Дальше, майки и футболки от Cult of Death Cow никому что ли не нужны? Нужны? Тогда открываем для себя самый элитный магазин хакерской одежды - Jinx Hackwear (www.jinxhackwear.com). О, да! Здесь есть все! Как тебе, например, маечка с надписью "IRC Junkie"? :). Ну и, конечно же, здесь классическое "Got root?" от шапок до толстовок с капюшоном

и на закуску: NerdGear (nerdgear.zoovy.com) - магазин ботанов (Nerd с английского сленга - ботан, компьютерщик) Особая фишка - майка "Gates - Know Thy Enemy" с фоткой Билли. Плюс магазин Geekgarb (www.geekgarb.com), где можно прикупить маечку со значком ICQ (для фанатов Мирабилиса :). Все, занавес!

Outro

Ну вот и все то, о чем мы собирались поведать тебе в этой статье. Теперь дело осталось за тобой. Выбери себе клевый прикид, но только смотри не перестарайся :).

74

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

to

BUY

 

 

 

 

m

Кодинг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

 

d

f

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

СЕТЕВЕАЯ БИБЛИОТЕКА WINSOCK

Horrific aka Фленов Михаил (smirnandr@mail.ru) www.cydsoft.com/vr-online

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

oc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ins

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

êà

 

 

W

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

èî

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

áë

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

àÿ

 

 

áè

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

âå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñå

 

 

 

 

 

 

 

 

 

 

 

 

через компоненты

Delphi очень удобна и достаточно

проста, но

 

 

 

DРабота с сетью

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обращаться к сетевой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Ýòî

можно

исправить, если напрямую

 

 

 

 

 

 

 

 

 

 

 

 

 

слишком уж медленна

 

 

 

 

 

 

 

 

 

 

.

Сегодня

мы познакомимся

с ее основами и потом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

дождался

 

 

библиотеке

 

окошек - Winsock

 

 

 

в мире сканер портов

:).

Да, ты почти

 

 

 

 

 

 

 

самый быстрый

 

 

 

 

 

 

 

сможем

создать

 

 

 

 

 

 

тебе показывал,

был очень хорошим, но

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

Òîò

сканер, который я

 

 

 

 

 

 

 

 

но напишем

 

 

этого

момента

 

 

 

 

 

.

 

Новый вариант будет самым быстрым в мире,

 

 

слишком

медленным

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мы его в следующий раз, а сегодня

 

теория

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.com/vr-onlin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.cydsoft

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ail.ru www

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

nandr@m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

àèë smir

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

íîâ Ìèõ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Horrific aka Ôëå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ìû

 

 

 

 

. Для версии 1.0 нужно указать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Версия winsock, которую

хотим стартануть

 

 

 

 

 

MAKE-

 

 

 

 

 

 

 

 

 

sock

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нужна вторая, значит, будем указывать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

íî íàì

 

 

 

 

 

îå Win

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MAKEWORD(1,0),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

×òî òàê

 

 

 

Winsock состоит

из одного лишь файла Winsock.dll. Она очень

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Á

иблиотека

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

потому что

â íåé

 

WORD(2,0)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рмация

хорошо подходит для создания простых приложений,

 

 

è

 

2. Структура типа TWSADATA, в

которой

будет возвращена инфо

 

 

 

 

 

 

соединения

 

 

 

 

 

 

 

 

 

 

 

реализованы

 

все необходимые функции

для создания

 

 

найденном winsock.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вызвать

 

 

 

 

 

 

 

 

 

 

 

 

 

. Â winsock

 

 

 

 

 

 

 

 

 

 

 

.

Для этого

нужно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

äàæå

не пытайся

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

р создавать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

как нужно

 

закрывать

библиотеку

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Зато сниффе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

узнаем,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

редачи файлов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

встроить эти

 

Теперь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В принципе, если ты не

приема/пе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

MS обещала

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ðîâ.

нет ничего для

доступа

 

ê

заголовкам

пакетов

 

 

 

 

 

 

 

 

 

прокатила нас

 

функцию

WSACleanup,

 

ó

 

 

рой нет парамет

 

 

 

. После выхода из

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

êîòî

 

 

 

 

 

 

 

 

необходимые продвинутому

челу вещи в winsock2, но, как всегда,

 

 

 

 

 

 

 

 

закроешь Winsock,

то ничего

критического не произойдет

 

 

после

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

просто освобождение

ненужного сразу

задницей по наждачной бумаге :) и сказала,

мол, обойдемся

 

 

 

 

 

 

 

 

 

программы все само закроется,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функции одинаковы для

 

 

 

 

 

.

 

 

 

 

 

 

 

 

Чем хороша

эта библиотека, так это тем, что все ее

 

 

 

 

 

 

 

 

 

 

 

 

использования

является хорошим тоном в

кодинге

 

 

 

 

 

 

 

 

 

 

ðì

и языков

 

 

 

 

 

рования.

 

Так, например, когда мы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

многих платфо

 

 

 

 

 

его легко

 

можно

будет перенести на язык С/С++ и даже

 

 

 

 

 

 

 

 

 

 

åð

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

напишем сканер портов,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

é ïðèì

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ровать

 

 

 

 

 

 

 

 

 

 

 

 

там сетевые функции называются

Первы

 

 

 

 

 

 

 

 

 

 

 

 

ð,

который

 

 

 

 

написать что-то подобное

â *nix,

потому что

 

ры. Разница между

сетевой

Ä

àâàé

сразу

напишем

приме

информацию о нем. Создай в Delphi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

на экран

так же и имеют

практически те же парамет

 

 

 

 

 

 

 

 

и должно быть,

Winsock и выводить

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Windows è Linux

минимальна, хотя и есть. Но так

 

 

 

 

 

 

 

. Теперь к нему надо подключить заголовочные файлы

библиотекой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

новый проект

 

 

 

 

 

 

 

 

 

 

 

 

uses и добавить

òóäà

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

риться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

надо перейти в раздел

 

 

ведь Билл не может по-человечески,

и ему обязательно надо выпенд

рживает

winsock

 

 

 

 

 

 

. Для этого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2-й версии

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сразу же предупрежу,

что мы будем изучать winsock2, а Delphi подде

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

ровать этот пустой проект, то Delphi

 

 

 

 

 

 

 

îí ñìîã

 

увидеть вторую,

 

нужно

 

скачать

модуль winsock2

 

 

 

 

 

 

 

 

 

 

только первую

 

 

 

 

 

 

.

Чтобы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если ты попробуешь

 

сейчас

скомпили

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ýòî

можно сделать с

 

моего сайта в

 

 

. Это потому, что он не может найти сами

 

версию

 

 

 

 

 

 

 

 

 

 

 

 

 

 

заголовочные

файлы для 2-й версии

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проругается

на добавленный

модуль

файлы Winsock2 с моего сайта, то можно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

разделе “download”

 

-> “Заголовочные файлы”)

 

 

 

 

 

 

 

 

socket - ýòî êàê áû

 

 

. Если ты скачал заголовочные

 

 

 

 

 

 

 

 

 

 

 

 

 

библиотеки

 

построена вокруг понятия

файлы

 

 

двумя

способами:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вся работа сетевой

 

 

 

 

 

 

 

 

 

 

 

поступить

 

-нибудь диру

и туда же забросить файлы

 

 

 

 

 

 

соединения

с сервером ты должен подготовить

 

 

 

 

 

 

 

 

 

 

 

виртуальный сетевой канал. Для

 

 

 

 

на любой порт

серванта. Все

1. Сохранить новый

проект в какую

 

 

 

 

 

 

 

.inс. Неудобство

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.inc è wsnetbs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

можешь соединяться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.inc, wsnwlink

 

 

 

 

 

 

 

 

 

 

 

к работе и потом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.inc, wsipx

 

 

 

 

 

 

 

 

 

 

 

 

такой канал

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

дать тебе сейчас общий

 

 

 

 

.pas, ws2tcpip

 

 

 

 

 

 

 

 

 

Winsock2, надо забрасывать

 

 

 

 

 

 

 

 

 

 

 

 

практике, но я попробую

WinSock2

 

 

 

в каждый проект, использующий

это лучше всего увидеть на

 

 

 

 

 

 

 

 

 

 

 

этого способа -

 

 

 

 

 

 

 

 

алгоритм работы с сокетами:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

заголовочные

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

WinSock.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

файлы

 

 

 

 

ýòè

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

руем библиотеку

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ó

íàñ

2.

Можно

 

забросить

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Инициализи

ðóåì socket

(канал для связи).

После инициализации

 

 

 

â

äèðó

 

Delphi\Lib,

è

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

файлы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Инициализи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

канал.

Созданный socket

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

должна быть

переменная, указывающая на новый

 

 

 

 

есть не только на

тогда

уж точно любой проект

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

компе. Порты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ýòî,

можно сказать, что открытый порт на твоем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

найдет их.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

передача данных между компами, то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

серванте, но и у тебя, и когда происходит

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

äèì

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

она происходит

между сетевыми

портами.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ру. В каждой функции для работы с сетью

Øêî

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ò

еперь создай форму,

 

 

 

 

 

 

 

 

 

 

 

 

 

3. Можно присоединяться к серве

 

 

 

 

 

 

переменная,

 

указывающая

íà

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ром обязательно указывается

 

 

õîòü

чем-то похожую

 

 

 

 

 

 

 

 

 

 

 

 

 

первым парамет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

созданный

 

канал, через который будет происходить

соединение

 

 

 

 

 

 

на рисунок

1.

После

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

создай

 

обработчик

 

 

 

 

 

 

 

 

 

 

 

 

 

тартуе

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

этого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

события

OnClick äëÿ

кнопки и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ì winsoc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

библиотеку (для юниксоидов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

амое первое, что надо сделать - стартануть

 

напиши там следующий текст:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Ó

 

 

 

 

 

 

проги

 

 

 

 

 

 

это не нужно делать). Для этого нужно вызвать функцию

WSAStartup

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Форма будущей

 

 

 

 

 

Ñíåå

 

 

 

 

 

 

 

 

 

 

 

ðà:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

есть два парамет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

75

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

w

 

 

to

 

 

 

 

o

Кодинг

P

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

o

m

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

СЕТЕВЕАЯ БИБЛИОТЕКА WINSOCK

Horrific aka Фленов Михаил (smirnandr@mail.ru) www.cydsoft.com/vr-online

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

procedure TForm1.Button1Click(Sender:

TObject);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Это очень удобно (но

var

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

действия,

не дожидаясь физического

контакта с сервантом

 

 

 

 

 

 

 

 

 

info:TWSADATA;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

время, пока произойдет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

кодинге), потому что можно использовать

 

begin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тяжело в

 

 

 

делать -

 

вызывать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

контакт, в своих целях.

Единственное,

что ты не можешь

 

 

tartup(MAKEWORD(2,0), info);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

реального

 

физического

 

 

контакта.

WSAS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сетевые

функции, пока не произойдет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

следить за тем, когда закончится

 

 

 

 

 

 

 

 

 

.wVersion);

 

 

 

 

 

 

 

 

 

 

 

 

Недостаток

в том, что самому приходится

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tToStr(info

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t.Text:=In

 

 

 

 

 

tion;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функции и можно будет дальше работать с сетью.

 

 

 

 

 

 

 

 

VersionEdi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выполнение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.szDescrip

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t.Text:=info

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DescriptionEdi

 

 

 

 

 

 

 

 

 

tatus;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.szSystemS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t.Text:=info

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ò

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SystemStatusEdi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

й коннек

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Для этого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Полны

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

окет готов, а значит, можно произвести

соединение с сервером

 

 

 

 

WSACleanup;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Ó ýòîé

функции есть три

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в библиотеки winsock есть функция connect

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñпараметра:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

самом начале

я стартую winsock

ñ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Â

1.

 

 

 

-сокет, которую мы получили после вызова функции socket

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

artup.

 

Â

íåì

 

ÿ

Переменная

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

помощью

 

 

 

 

 

2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Для того чтобы узнать

 

 

 

 

 

 

 

 

 

 

 

 

WSASt

а информация

Структура типа TSockAddr

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

запрашиваю 2-ю версию,

3.

Размер

структуры,

указанной

во втором параметре

 

 

 

 

 

параметра

 

 

 

 

 

 

 

 

 

 

 

 

 

ìíå

будет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

î

 

текущем

состоянии

 

размер, можно воспользоваться

функцией SizeOf и указать в качестве

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

возвращена в структуру info. После этого

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

структуру

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ее полностью

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ÿ

 

 

вывожу

 

полученную

 

èíôó

 

äëÿ

Структура

TSockAddr

очень сложная,

 

и описывать

нет смысла

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

Лучше мы познакомимся

с нею на практике, а пока я покажу только основные

 

 

 

 

 

 

 

 

 

 

 

всеобщего просмотра

 

 

î

версии

ó

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ïðè

выводе

информации

 

 

 

 

поля, которые должны быть

заполнены

 

 

 

 

. Здесь нужно указывать то же, что

 

 

 

 

 

 

 

 

 

 

 

меня есть небольшая проблема, потому

sin_family - семейство используемой адресации

 

 

 

(äëÿ

íàñ ýòî

 

ÐF_INET èëè

 

 

 

 

 

 

 

 

 

 

 

÷òî

 

свойство wVersion

структуры

info

указывали в первом параметре при создании

сокета

 

 

 

 

 

 

 

 

 

 

 

 

 

имеет числовой тип, а для вывода мне

AF_INET).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

Пример работы проги

 

 

 

 

íàäî

преобразовать его

 

â

 

 

.

Äëÿ

sin_addr -

адрес сервера, куда мы хотим

присоединиться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

строку

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

этого я выполняю преобразование

с помощью IntToStr.

 

 

 

 

 

 

 

 

sin_port - порт, на который мы хотим

приконнектиться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На деле это будет выглядеть так:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

úåìà

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

âêà ðàç

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sock-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

одгото

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ï

режде чем производить

коннект к серверу,

надо еще подготовить

 

 

var

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Äëÿ

подготовки нужно выполнить

 

addr: TSockAddr;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Ýòèì

è

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

et

ê

займемся

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функцию socket, у которой есть три параметра:

 

 

 

ìû

будем

begin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тип используемой

 

 

 

 

. Íàñ

 

интересует

Инет, поэтому

 

addr.sin_family := AF_INET;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.

адресации

 

видишь,

îáà

значения

очень

похожи и

 

.sin_addr

:= ServerName;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

AF_INET. Êàê

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

указывать PF_INET или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â

первом случае работа будет

 

addr

 

 

 

:= htons(21);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

показывают

одну и ту же адресацию,

только

 

addr.sin_port

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t, @addr, sizeof(addr));

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

синхронной,

а во втором

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

будет

 

 

t(FSocke

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

асинхронной

 

указать, на основе какого протокола

 

connec

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Базовый протокол. Здесь мы должны

 

 

 

end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

читаешь Х и

рубрику “Кодинг”, то должен

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

происходить

работа. Если ты регулярно

 

 

 

 

wn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- TCP (с надежным

соединением) и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

существует два базовых протокола

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. В качестве

знать, что

 

 

 

 

соединений, а просто выплевывающий

данные в порт).

 

Ну и напоследок -

функция

для закрытия соединения - closesocket

 

 

 

UDP (не производящий

 

 

 

UDP, òî

 

 

 

 

 

-сокет.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SOCK_STREAM, а если нужен

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для TCP в этом параметре надо указать

 

 

 

 

параметра

нужно указать переменную

 

 

 

 

 

раз мы углубимся в сетевой кодинг

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

На сегодня я думаю закончить, а в следующий

 

 

 

сканер портов.

Исходники

указывай SOCK_DGRAM

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мегабыстрый

3. Вот здесь

мы можем указывать, какой конкретно протокол

íàñ

интересует

 

и уже скоро напишем долгожданный

 

 

 

 

 

 

 

.com/vr-online

 

_ECHO,

 

 

ñ

 

 

 

 

 

 

 

 

 

 

 

 

Возможных

значений

тут немерено

 

(например,

IPPROTO_IP,

IPPORT

.pas è

 

примера, как всегда, можно скачать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выхода этого номера в свет.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IPPORT_FTP

и т.д.). Если хочешь увидеть

все, то открывай файл winsock2

 

 

после

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

это и будут возможные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

_,

и все что ты найдешь -

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

запускай поиск по IPPORT

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P.S. У меня к тебе просьба, на сто баксов

:). Не пиши мне большие письма

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. ß

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рубрики “Кодинг”

меня каждый день валят

вопросами

протоколы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

После появления

 

 

 

 

 

÷òî-òî

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. ß ìîãó

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òü

 

 

 

 

 

 

 

 

 

 

 

не в состоянии

âñåì

 

рассказывать то, о чем пишут книги

 

 

 

 

 

 

 

 

 

 

 

 

 

/асинхроннос

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

написать

 

 

 

 

нность

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

работы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. А просьбы типа помоги

Синхро

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ò

 

 

 

 

 

 

познакомить с синхронностью

и асинхронностью

 

 

 

 

 

 

 

 

-то помочь, но не больше

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

еперь я хочу тебя

.

 

 

 

 

 

 

 

 

подсказать, где

 

 

 

 

 

.

Я отвечаю только на те вопросы, где ответ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

прогу

 

 

 

 

 

 

 

 

 

 

 

порта. Разница в этих двух режимах следующая

 

 

 

 

 

 

 

 

вообще нереальны

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

íå ìîãó. ß

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

займет несколько

строчек. Целые лекции по мылу я разводить

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

то программа останавливается

 

 

помог всем,

 

 

 

 

 

 

 

 

 

.

 

 

Вас слишком

 

Синхронная работа: когда ты вызываешь функцию,

бы с удовольствием

но это НЕВОЗМОЖНО

 

 

 

на несколько

 

 

 

 

 

 

 

 

 

 

.

 

Поэтому

лучше разбей

свой вопрос

 

 

 

 

 

 

 

 

 

 

. Допустим, что ты запросил коннект с сервером

много, а я один :(((.

 

.

 

 

 

 

 

 

 

 

 

и ждет полного ее выполнения

 

 

 

 

 

 

 

 

 

 

коннект или ошибка.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Прога тут же тормозит и ждет, пока не произойдет

 

 

 

маленьких и спрашивай

постепенно, а не все сразу

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

о каждую

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Асинхронная

работа: при этом режиме

программа не спотыкается

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Òâîÿ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Допустим, что ты запросил все тот же коннект с сервером

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сетевую функцию

 

 

 

 

 

 

 

и тут же продолжает выполнять следующие

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

прога посылает запрос на соединение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

76

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

Ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d

 

 

 

ðîãð

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

ìì

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

èðî

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

âà

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

íè

 

 

 

 

 

 

 

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

å

ãð

ôè

 

 

 

df

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

êè

BUY

 

 

 

 

 

 

 

Вывод

спрайтов

 

 

w Click

to

 

 

 

 

 

 

 

 

 

 

à

 

 

 

 

 

 

 

 

à

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

 

Основа любой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ë

 

двухмерной графики - спрайты, т.е.

простые

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

юбого формата. Если ты хоть

 

 

 

графические картинки

 

 

 

 

 

 

 

 

 

 

 

слышать

такое

 

 

немного следишь за игровым миром, то

должен уже

 

 

 

 

 

 

 

 

 

 

 

понятие, как спрайтовая графика.

Практ

ически

 

 

 

 

 

 

 

 

 

 

 

двухмерной графики

 

 

 

 

 

любая прога

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

использует графические файлы для вывода

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

изображения на экран.

 

 

 

какого-

нибудь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Horrific aka Фленов Михаил

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Теория спрайтов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

smirnandr@mail.ru www.cydsoft.com/vr-online

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ä

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

î

появления

3D

ускорителей

спрайтовая графика была единственным

 

 

 

 

 

 

 

 

 

научились

 

создавать

 

главную

способом создания игр.

Даже самый

знаменитый

и на первый взгляд

 

 

 

 

 

 

 

 

 

поверхность,

íà

 

которой

можно

трехмерный Doom был

 

 

 

 

 

 

 

 

 

 

 

 

полностью двухмерным и

напичкан спрайтами. Все

 

 

 

 

 

 

 

 

 

рисовать.

 

Напоминаю,

÷òî

монстры -

это просто

 

 

 

 

 

 

 

 

 

 

 

 

 

заранее подготовленные

картинки, а такие вещи,

как оружие

 

 

 

 

 

 

 

 

 

поверхность

- ýòî

просто

область

или аптечки, вообще

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

памяти.

 

 

Ýòà

 

Работа со

 

не знали о существовании

третьего измерения.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

область

может

спрайтами

похожа на

мультипликацию, ты

просто

подготавливаешь

 

 

 

 

 

 

 

 

 

находиться

как в памяти видеокарты,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òàê

 

è

 

â

 

изображение какого-нибудь предмета

â

разных

плоскостях и потом выводишь их на

 

 

 

 

 

 

 

 

 

 

 

 

оперативке.

 

Первичная

 

 

 

 

 

экран в зависимости от ситуации.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

поверхность

всегда

находится

â

 

 

 

 

Посмотри

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

памяти

 

видюхи,

 

 

è

 

âñå, ÷òî

 

 

 

 

íà

рисунок 1.

На нем показана вполне

 

 

 

 

 

 

 

 

 

отображено

íà

 

 

íåé,

сразу

 

 

 

 

 

реальная

 

последовательность

спрайтов.

Åñëè

 

 

 

 

 

 

 

 

 

отображается

на мониторе. Запись в

 

 

 

 

 

последовательно

воспроизвести каждый из спрайтов,

 

 

 

 

 

 

 

 

 

ýòó

 

 

поверхность

 

равносильна

 

 

 

 

òî

может

возникнуть

ощущение

трехмерности

 

 

 

 

 

 

 

 

 

рисованию

по самому

экрану.

 

 

 

 

 

 

 

 

самолета, который наклоняется в твою сторону. А если

 

 

 

 

 

 

 

 

 

Ты можешь создавать

дополнитель-

 

 

 

 

åùå

 

è

постепенно

двигать

ýòè

картинки

ïî

õîäó

 

 

 

 

 

 

 

 

 

íûå

поверхности и хранить в них что

 

 

 

 

 

движения

самолета, то можно окончательно обмануть

Изображение для вывода на экран

угодно,

ведь это простая память, и

 

 

 

 

òâîå

 

 

 

 

 

 

 

 

 

 

 

зрение. Хорошо прорисованные

спрайты могут

 

 

 

 

 

 

 

 

 

она уже не влияет на содержимое эк-

 

 

 

 

 

создать

ощущение

 

реального мира.

Åñëè

òû

õîòü

äà íàøó

 

 

 

 

 

 

 

ðàíà. Òàê

почему бы не загрузить ту-

 

 

 

 

иногда

 

 

 

 

 

 

 

 

 

 

 

картинку? В этом случае мы сможем

обращаться к

íåé

средствами

 

 

 

 

 

 

 

 

 

используешь свой комп для игр, то ты

DirectDraw, которые могут

 

 

 

 

 

 

 

 

 

 

понимаешь,

о чем я говорю.

 

 

 

 

 

 

 

 

 

 

 

 

работать с ускорителями и выполнять любые

операции

 

 

 

 

 

Подготавливаем картинку

 

 

 

над поверхностями намного быстрее.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поверхность для картинки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ñ

егодня

ìû

 

ïîêà åùå

íå

будем

создавать

Ä

ля начала открой

проект,

созданный в предыдущем

 

 

 

 

 

 

 

 

 

 

 

 

 

анимации,

íî

простую

 

 

 

номере Х, сейчас мы

 

 

 

 

 

 

 

 

 

 

 

статическую

картинку

его доработаем.

Перемещаемся в

раздел

 

 

 

 

 

 

 

 

 

 

 

выведем на экран. На

рисунке 2 ты

можешь

 

 

 

 

 

var

è

рядом

ñ

объявлением

 

 

 

 

 

 

 

 

первичной поверхности описываем

 

 

 

 

 

 

 

увидеть подготовленное мною

åùå îäíó:

 

 

 

 

 

 

 

 

 

 

 

 

изображение.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FImageSurface: IDirectDrawSurface7;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ты можешь создать любую другую

 

 

 

 

 

Прежде чем использовать ее, очень

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

что она должна

умещаться

â

картинку, но помни,

хорошим

тоном было

áû

сначала обнулить

 

 

 

 

 

 

 

пределы экрана. Если

переменную. Для этого

переходим

íàøó

 

 

 

 

 

 

õîòÿ áû îäèí

 

òóäà, ãäå

начинается

 

 

 

 

 

 

 

 

пиксель не

поместится, то изображение

 

 

 

 

код нашей

программы, и

 

 

 

 

 

 

не будет выведено на

 

присваиваем переменной

FimageSurface значение nil.

 

 

 

 

 

 

 

 

 

 

 

 

 

экран.

 

 

 

 

 

 

 

А почему

 

я присвоил

nil,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для начала вспомним

предыдущий урок. На

 

 

 

а не простой 0 (ноль)? Ноль мы

можем

присваивать

 

 

 

 

íåì ìû

числовым

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

переменным, а переменные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

создали первое полноэкранное

DirectX

приложение и

указатели

 

на область

памяти, где

 

объекта - это не числа. На самом деле это

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

расположен сам

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Спрайтовая анимация

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

самолета

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

to

 

 

 

 

 

o

Кодинг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

g

.c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРОГРАММИРОВАНИЕ ГРАФИКИ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Horrific aka Фленов Михаил (smirnandr@mail.ru)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

www.cydsoft.com/vr-online

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Когда

ты его создаешь, то выделяется

необходимая для хранения объекта

 

 

 

 

 

 

 

 

 

. Когда ты уничтожаешь

объект,

 

 

 

объект

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

память и переменной присваивается

только ссылка

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

память освобождается

и ссылка обнуляется

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ÿ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

æåíè

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рузка

изобра

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

идее, сначала

ìû

 

 

 

 

Çàã

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

из простого файла. По

 

 

 

 

 

Ò

еперь

загрузим наше изображение

считывая

оттуда

 

 

 

 

 

 

 

 

 

ôàéë è,

 

 

 

 

 

 

 

 

 

создать

поверхность,

потом открыть

 

 

 

 

 

 

 

 

должны

 

 

 

.

Но это только по идее, потому что

 

 

 

 

 

 

 

 

 

 

 

 

èõ

 

 

 

 

 

 

 

 

 

 

 

 

данные, записывать

в поверхность

 

 

 

 

 

âåñü ýòîò

процесс

 

 

 

 

 

файлы для DirectX с моего сайта, то

 

 

 

 

 

если ты качал заголовочные

 

 

 

 

 

 

 

 

 

 

 

 

 

выполняется за одну строчку.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 íåì óæå

 

 

 

 

 

Вместе

с заголовочными

файлами ты можешь найти файл

ddutil.pas

 

 

 

 

â òîì

 

 

 

 

 

 

 

 

 

операций, которые могут тебе понадобиться,

 

 

 

 

 

 

 

 

много стандартных

 

 

 

 

 

 

 

реализовано

 

 

 

хочу сказать, что модуль написан

íå ìíîé è

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Сразу

 

 

 

 

 

 

 

 

 

 

числе и загрузка

изображения

 

 

 

 

корпорашкой

MS, так что его реализация

 

 

 

 

 

 

 

 

 

 

 

 

нелюбимой

 

 

 

 

 

не Васей Пупкиным, а всеми

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

есть и для языков С/С++.

 

 

 

 

 

 

 

 

 

 

 

. Теперь можно загружать что

 

 

 

 

 

Перейди в раздел

uses и добавь туда имя

этого модуля

перед

циклом

 

обработки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

поверхности

è

 

 

 

 

 

 

угодно.

После создания первичной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сообщений напиши следующее:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tDraw, ‘1.bmp’, 0, 0);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tmap(FDirec

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FImageSurface

 

:= DDLoadBi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Ó

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Здесь я вызываю функцию

DDLoadBitmap,

которая описана в модуле ddutil.pas

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нее четыре

параметра:

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Уже созданный

объект DirectDraw

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Если путь не указывать, то изображение должно

 

 

 

 

 

 

2 Èìÿ (åñëè íàäî, òî è

путь) файла

 

 

 

 

ôàéë.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

лежать

в той же директории, что и запускной

 

 

 

 

 

 

 

 

 

. Åñëè òû

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- это желаемые ширина и высота

картинки

 

 

 

 

 

 

 

 

3,

4. Последние два параметра

 

 

 

 

 

 

 

 

 

 

 

 

 

значения, отличные

îò íóëÿ,

то картинка будет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-нибудь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

укажешь

здесь какие

 

 

 

 

 

 

 

. Если указать нули, то будут использоваться

 

 

 

 

 

 

приведена

именно к этим размерам

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

вручную (не

 

 

 

 

 

 

реальные размеры изображения

 

 

поверхность

FimageSurface

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Я специально

íå

 

создавал

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вызывал явно метод CreateSurface),

потому что если это необходимо,

òî

 

ее. Ручной труд тут уместен,

только если ты

DDLoadBitmap

сама проинициализирует

 

.

фическое, а нас пока устроят и значения

по умолчанию

хочешь создать что-то специ

 

 

 

 

 

 

 

анету

 

ñóåì

âñþ ïë

 

. Ýòî

È

 

 

 

 

 

к его выводу на экран

Îáðè

зображение

готово,

и можно приступать

 

желательно

делать по событию

 

 

при необходимости

прорисовать окно.

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

_PAINT then

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

if msg=WM

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

begin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

// Обнуляю структуру bltfx

 

tfx));

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bltfx, SizeOf(bl

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ZeroMemory(@

размер

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

//Заполняю

åå

tfx);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bltfx.dwSize := sizeof(bl

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

//Цвет заливки

 

 

:= 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bltfx.dwFillColor

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

//Закрашиваю

ôîí

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tfx);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

_WAIT, @bl

 

 

 

 

 

 

 

 

.Blt(nil, nil, nil, DDBLT_COLORFILL

or DDBLT

 

 

 

 

 

 

 

 

 

 

 

FPrimarySurface

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

//Вывожу на экран изображение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

_WAIT);

 

 

 

 

 

 

 

 

 

 

 

t (175,

75, FImageSurface,

nil, DDBLTFAST

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.BltFas

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FPrimarySurface

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bltfx,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Первым делом я заполняю структуру

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Давай разберемся

 

с этим текстом

var â âèäå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Это очень сложная

 

которая у меня объявлена в разделе

 

òèïà TDDBLTFX

 

 

 

Blt, которая

 

 

 

 

 

 

 

 

функции поверхности

 

 

структура,

которая

используется

при вызове

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

достаточно сложная и имеет

множество возможностей

 

 

 

тоже, в свою очередь,

 

 

функции Blt

- очистка экрана.

 

 

 

 

 

с одной из

возможностей

 

Сегодня мы познакомимся

 

 

 

значения

- dwSize (размер

 

 

 

надо заполнить

только два

 

Для этого в структуре

 

bltfx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

структуры заполняется

всегда) и dwFillColor

(цвет заливки)

 

 

 

сказать, даже метод

 

функцию (точнее

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Когда структура

готова, можно вызывать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

объекта поверхности)

Blt. У метода есть 5 параметров:

 

 

 

nil, òî

рисуется на всей

 

 

 

íà

которой

надо рисовать

(åñëè

 

1. Область приемника,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а только закрашиваем,

 

поверхности)

 

 

 

 

 

 

 

 

 

(мы не копируем поверхность,

 

 

2. Поверхность источника

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

âñÿ

 

поэтому

ó ìåíÿ nil)

 

 

 

 

 

 

 

должна скопироваться

(если nil, то копируется

 

3. Область источника, которая

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Здесь я указываю

 

поверхность)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4. Флаги, которыми

указывается, что должна

сделать

 

функция

 

 

 

 

выбранную

 

 

 

 

 

 

закрасить

 

 

 

 

 

-

указывает на

необходимость

 

DDBLT_COLORFILL

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

цветом.

А также DDBLT_WAIT

-

указывает на то, что если

 

область

указанным

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вывод сейчас

 

невозможен, то подождать

 

 

 

 

 

 

параметры, в данном случае

 

 

 

 

 

 

 

 

 

 

 

 

 

необходимые

 

 

5. Структура, в которой хранятся

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(откуда копируем и

 

цвет заливки

 

 

 

 

 

есть размеры источника и приемника

 

Среди параметров

Èç-çà

этого может

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

êóäà), à

вот поверхность указывается

 

только источника

Все очень просто,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

возникнуть вопрос: “А куда

происходит копирование?”

 

 

 

 

 

 

в данном

 

 

 

 

 

 

которая вызвала этот метод,

 

 

копироваться будет в ту поверхность,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

случае в

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.Blt).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

поверхность

 

 

первичную (FPrimarySurface

 

 

 

 

 

íàøà

 

 

первичная

 

После

 

выполнения

ýòîé

 

функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

черным

цветом.

Теперь мы готовы перенести

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(FprimarySurface) очищается

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

наше изображение

из поверхности FimageSurface

на первичную

òî,

 

наверно,

 

 

 

 

 

 

 

 

 

 

íà

 

параметры метода Blt,

 

 

Если ты внимательно посмотрел

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Для этого в

 

заметил,

 

что с помощью нее можно и копировать

поверхности

 

 

 

 

 

.

 

 

копируемую

 

 

 

 

 

 

 

 

 

 

 

 

 

параметра

нужно только указать

поверхность

 

качестве второго

 

реализацией BltFast. Но

 

 

 

 

более

простой и

 

более быстрой

 

Но я воспользовался

 

 

 

 

 

 

в следующий

 

другая история, с которой мы разберемся

 

это уже совершенно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ðàç.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

own

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. В следующий раз я

 

Shutd

 

 

 

 

 

 

 

 

 

 

 

 

пример

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Í

а этом сегодняшний

можно закончить

 

 

 

 

 

 

 

 

÷òî òóò

 

 

 

 

 

 

изображений

на экран, потому

 

 

продолжу рассказ про вывод

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

есть очень много интересных

и хитрых приемов

 

 

ñ

моего

 

сайта

 

 

 

 

можно

 

 

скачать

 

 

 

 

 

 

 

примера,

 

êàê

 

всегда,

 

 

 

 

 

 

Исходники

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.com/vr-online после выхода этого номера в свет.

 

 

 

 

 

 

 

 

 

www.cydsoft

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

:). Не пиши мне большие

 

P.S. У меня к тебе просьба,

на сто баксов

 

 

 

меня каждый

день валят

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. После появления рубрики “кодинг”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òî,

о чем пишут

 

письма

 

 

 

.

 

Я не в состоянии

всем рассказывать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. À

 

вопросами

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где-то помочь, но не больше

 

 

 

.

Я могу что-то подсказать,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Я отвечаю

 

книги

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

просьбы типа помоги написать

прогу - вообще нереальны

 

 

.

 

Целые

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

только на те вопросы,

где ответ займет несколько

 

строчек

 

помог

 

 

 

 

 

íå

 

 

 

 

 

. Я бы с удовольствием

 

лекции

 

по мылу я разводить

 

ìîãó

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

:(((.

 

 

 

Вас слишком много, а я один

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

всем, но это НЕВОЗМОЖНО

 

вопрос

 

на несколько

маленьких и

 

Поэтому

лучше

разбей

 

ñâîé

 

 

 

 

 

 

 

 

 

спрашивай постепенно,

а не все сразу.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

78

Соседние файлы в папке журнал хакер