Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C++ Builder / Delphi

Выпуск № 284
от 04.02.2004, 02:20

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 1303
Отправлено ответов: 2811
Активность: 215.7 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Pawel
Статус: Опытный
Общий рейтинг: 160.3
[Подробней >>]
samum2000
Статус: Опытный
Общий рейтинг: 120.72
[Подробней >>]
THE_PRO
Статус: Опытный
Общий рейтинг: 138.19
URL: THE_PRO
[Подробней >>]
 
sir henry
Статус: Профессиональный
Общий рейтинг: 159.48
[Подробней >>]
Boriss
Статус: Профессиональный
Общий рейтинг: 151.3
URL: Программирование на Паскале
[Подробней >>]
CJ
Статус: Опытный
Общий рейтинг: 122.74
URL: Мой персональный сайт! Зайдите и не пожалеете!
[Подробней >>]
 
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 145.62
URL: Программирование
[Подробней >>]
Tano
Статус: Доверительный
Общий рейтинг: 134.57
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.54
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1284. Уважаемые эксперты! Я хочу написать сервис под Win2k/XP без формы, который являлся бы сервером TCP (... (ответов: 1)
Вопрос № 1285. всем привет! как в TF1Book записать в определенную ячейку ( к примеру в [4,8]) строку типа string и ... (ответов: 2)
Вопрос № 1286. Здравствуйте, уважаемые эксперты ! Кто знает помогите советом, уже второй раз наблюдаю такую картину... (ответов: 6)
Вопрос № 1287. Вот есть у меня в базе таблица (заполненая поуши). Хочу из Delphi прилепить к таблице еще одну колон... (ответов: 3)
Вопрос № 1288. Мужики. Сегодня по невнимательности отправил ответ из Outlook'а! Раньше это не проходило. Спасибо ад... (ответов: 1)
Вопрос № 1289. Поскажите хорошую книгу по php, желательно с диском и уж совсем хорошо если на этом диске будет apac... (ответов: 6)
Вопрос № 1290. Нашел в интернете сайт который предлагает программу для защиты собственных разработок. StarForce Sof... (ответов: 2)
Вопрос № 1291. Почему когда я хочу из Дельфы запустить прогу, пишет типа Debugger Kernel BORDDBK70.DLL is missing o... (ответов: 4)
Вопрос № 1292. Здравствуйте, уважаемые эксперты! У меня такой вопрос. Когда программа, написанная на Delphi, произ... (ответов: 7)
Вопрос № 1293. Добрый вечер! Столкнулся с такой проблемой, требуется помощь. Делфи 5 , функция FileExists - при ра... (ответов: 5)
Вопрос № 1294. Как по нажатии на кнопку изменить системную дату на 10 дней назад, а по нажатии на вторую вперед!... (ответов: 5)

Вопросов: 11, ответов: 42


 Вопрос № 1284

Уважаемые эксперты!
Я хочу написать сервис под Win2k/XP без формы, который являлся бы сервером TCP (хочу использовать компонент TidTCPserver). В инете натолкнулся на статью "Написание сервисов Windows NT на WinAPI" (http://www.sources.ru/delphi/system/services_in_api.shtml). Но здесь сразу возникнуло несколько проблем:
1) У них в статье есть функция "ServiceInitialization" - она не описана. Как написать ее?
2) Как запускать этот сервис, и сделать так чтобы он прописался в системе, и чтобы удалился из оной (хотя бы куда пихать exeшник, и куда в реестре что прописывать - типа хочу сделать инсталляшку и анинсталляшку этого сервиса)?
3) Хотелось бы достать исходники этого сервиса написанного по этой статье!
З.Ы. Delphi 7.



Вопрос отправлен: 30.01.2004, 07:18
Отправитель: ShurA

[Следующий вопрос >>] [Список вопросов]

Отвечает Pawel

Приветствую Вас, ShurA!
Посмотри в Delphi/demoActiveX/...
или Delphi/WebServices/...


Ответ отправлен: 30.01.2004, 18:50
Отправитель: Pawel


 Вопрос № 1285

всем привет!
как в TF1Book записать в определенную ячейку
( к примеру в [4,8]) строку типа string и наоборот,
считать оттуда текстовое значение?



Вопрос отправлен: 30.01.2004, 12:23
Отправитель: New2 (new2student@rambler.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает samum2000

Доброе время суток, New2!
Например, сначала можно выделить ячейку, а затем установить её значение (читать можно аналогично):
F1book1.Selection:='A3';
F1Book1.Text:='qwer';
Колонки и строчки именуются как в Excel'e. Можно воспользоваться функцией SetActiveCell(nRow,nCol) - она устанавливает выделение на ячейке по её "координатам":
f1book1.SetActiveCell(3,2); //эквивалентно F1Book.selection('B3');
Попутного ветра!

Ответ отправлен: 02.02.2004, 08:21
Отправитель: samum2000


Отвечает THE_PRO

Доброе время суток, New2!
Vot eto i mne interesno...
Kak ta davno ya pitalsya razobratsya v etom komponente no...
Yedinstvennoye eto F1Book1.LaunchDesighner

Ответ отправлен: 30.01.2004, 12:37
Отправитель: THE_PRO


 Вопрос № 1286

Здравствуйте, уважаемые эксперты !
Кто знает помогите советом, уже второй раз
наблюдаю такую картину :), пишу программу и
при очередном запуске она не компилируется,
а внизу экрана (где сообщения об ошибках),
написана строка, что программа не может быть
откомпилирована. Вроде нет никаких ошибок, а
ни чего не компилируется. И не перезапуск
Делфи и не даже переустановка не помогают,
т.е. весь проект псу под хвост. Что за беда ?



Вопрос отправлен: 30.01.2004, 12:26
Отправитель: Sergey N.

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Приветствую Вас, Sergey N.!
Попробуйте откомпилировать Ваш проект в командной строке:
dcc32 Ваш_проект.dpr
и посмотреть, какие будут сообщения.

Ответ отправлен: 31.01.2004, 03:56
Отправитель: sir henry


Отвечает samum2000

Приветствую Вас, Sergey N.!
А что-нибудь кроме того, что программа не может быть откомпилирована Delphi пишет? Error или, хотя бы, Warning? Знаете, можно попробовать открыть ранее сохраненные исходники программы (файлы *.bak), т.е. переименовать их в соответсвующие *.pas, и попытаться стартануть проект с ними - иногда это помогает, особенно если ошибка где-то в коде программы.

Ответ отправлен: 02.02.2004, 08:21
Отправитель: samum2000


Отвечает THE_PRO

Здравствуйте, Sergey N.!
Mojet kakoy-to unit zateryalsya.

Ответ отправлен: 30.01.2004, 12:35
Отправитель: THE_PRO


Отвечает Boriss

Добрый день, Sergey N.!
Для точного ответа нужна более подробная информация:
1) возможно, что пишите на защищенный чем-то диск;(заполненный)
2) второй раз с того же диска ставите? Возможно, что там что-то;
3) Не компилируется самый простой проект или что-то серьезнее? Простой тест - создайте минимальную программу- если нормально, то что-делаете неправильно Вы

Ответ отправлен: 30.01.2004, 14:56
Отправитель: Boriss


Отвечает CJ

Доброе время суток, Sergey N.!
Если не компилиться, значит всетаки есть ошибки, посмотри внимательней. А на каком куске кода останавливается? Попробуй нажимать поочередно F7, и проследи на каком куске кода штопор! там и рой...

Ответ отправлен: 30.01.2004, 15:56
Отправитель: CJ


Отвечает Pawel

Добрый день, Sergey N.!
Либо существует ошибка (например отсутствее фаила ресурсов)
либо диск переполнен, защищён от записи, приложение запущенно.

Ответ отправлен: 30.01.2004, 18:48
Отправитель: Pawel


 Вопрос № 1287

Вот есть у меня в базе таблица (заполненая поуши). Хочу из Delphi
прилепить к таблице еще одну колонку с нужным мне еминем (именем
тоесть), длиной и типом...
КАк можно это сделать ?



Вопрос отправлен: 30.01.2004, 13:52
Отправитель: maDByte

[Следующий вопрос >>] [Список вопросов]

Отвечает Bob Johnson

Доброе время суток, maDByte!
через sql запрос alter table

* EMan1.5: ---===*** The game we play ***===---

Приложение:


Ответ отправлен: 31.01.2004, 22:54
Отправитель: Bob Johnson


Отвечает sir henry

Добрый день, maDByte!
Языком SQL:
ALTER TABLE название_таблицы ADD название_столбца тип(размер)


Ответ отправлен: 31.01.2004, 04:07
Отправитель: sir henry


Отвечает samum2000

Добрый день, maDByte!
Я так поял, что ты не хочешь потерять данные,поэтому предлагаю сделать это через временную таблицу. Для начала надо сохранить всю твою исходную таблицу в другой, временной таблице с любым именем. Затем удаляешь исходную, пересоздаешь её с тем же имененем, но другим набором колонок. После этого данные из временной таблицы возвращаешь в исходную на соответствующие места. Теперь временную можно удалять.

Ответ отправлен: 02.02.2004, 08:21
Отправитель: samum2000


 Вопрос № 1288

Мужики. Сегодня по невнимательности отправил ответ из Outlook'а! Раньше это не проходило. Спасибо админам :))



Вопрос отправлен: 30.01.2004, 15:02
Отправитель: Boriss (bsurin@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает CJ

Добрый день, Boriss!
И в чем проблема???

Ответ отправлен: 30.01.2004, 15:57
Отправитель: CJ


 Вопрос № 1289

Поскажите хорошую книгу по php, желательно с диском и уж совсем хорошо если на этом диске будет apache. Спасибо.



Вопрос отправлен: 30.01.2004, 23:33
Отправитель: Дмитрий

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Добрый день, Дмитрий!
Slushay mi tut ne PHPWorld a DELPHI/C++BUILDER Xperti
No sovet dam:
Knijka: PHP for Web-Desighners +CD
no ona ne dlya tex voobshe nicheqo ne znayet v PHP!

Ответ отправлен: 31.01.2004, 11:09
Отправитель: THE_PRO


Отвечает CJ

Приветствую Вас, Дмитрий!
Это оффтоп! У яндеска спроси!

Ответ отправлен: 30.01.2004, 23:42
Отправитель: CJ


Отвечает sir henry

Доброе время суток, Дмитрий!
И каким боком Ваш вопрос относится к Delphi/Builder?

Ответ отправлен: 31.01.2004, 04:09
Отправитель: sir henry


Отвечает samum2000

Приветствую Вас, Дмитрий!
Вот книга: PHP 4 Руководство разработчика Хьюгс С., Змиевский А., "ДиаСофт" - 2001, 384 стр.
А Апач можно взать здесь совершенно бесплатно:
ftp://ftp.lexa.ru/pub/apache-rus/apache_1.3.29rusPL30.19.tar.gz

Ответ отправлен: 02.02.2004, 08:23
Отправитель: samum2000


Отвечает Tano

Здравствуйте, Дмитрий!
Насчет локального WWW-сервера могу посоветовать пакет EasyPHP. Он включает в себя Apache и MySQL сервер, практически не требует настройки после установки. Нужно будет изменить:
1) Язык интерфейса в конфигурации EasyPHP (по умолчанию - французский);
2) В http.conf (В меню называется Configuration->Apache) в строках DocumentRoot "" и чуть ниже прописать путь к той папке на диске, которая станет корневой для сайта.
Книгу не подскажу, сам по электронным справочникам разбирался, что чаще всего рекомендуется, так как PHP - постоянно развивающийся язык, поэтому настоятельно рекомендуются электронные справочники с комментариями веб-мастеров (php4rus) хороший справочник на http://script-info.net/

Ответ отправлен: 31.01.2004, 01:05
Отправитель: Tano


Отвечает Pawel

Приветствую Вас, Дмитрий!
RTFM
Тема рассылки: "RusFAQ.ru: Программирование на C++ Builder / Delphi"

Ответ отправлен: 31.01.2004, 13:30
Отправитель: Pawel


 Вопрос № 1290

Нашел в интернете сайт который предлагает программу для защиты собственных разработок. StarForce Soft 3.0. На сайте нет цены, на софтекее эта программа не представлена. Может кто знает сколько стоит эта программа



Вопрос отправлен: 30.01.2004, 23:33
Отправитель: Дмитрий

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Приветствую Вас, Дмитрий!
И каким боком Ваш вопрос относится к Delphi/Builder?

Ответ отправлен: 31.01.2004, 04:11
Отправитель: sir henry


Отвечает Pawel

Приветствую Вас, Дмитрий!
StarForce Soft 3.0. - программа(библиотека) для защиты дисков от копирования. Насколько мне известно зашита StarForce Soft 3.0 предпологает не стандартный способ прожига диска, невозможный в домашних условиях.
Но каким местом это относится к " Программирование на C++ Builder / Delphi"

Ответ отправлен: 31.01.2004, 13:29
Отправитель: Pawel


 Вопрос № 1291

Почему когда я хочу из Дельфы запустить прогу, пишет типа Debugger Kernel BORDDBK70.DLL is missing or not registered!


Приложение:


Вопрос отправлен: 30.01.2004, 23:55
Отправитель: Kirill (karatetski@tut.by)

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Добрый день, Kirill!
U tebya ili setup delphi ne v poryadke, ili je ti chto to
ster.
Ispolzuy WinExec, ili je ShellExecute iz ShellAPI (unit
takoy)

Ответ отправлен: 31.01.2004, 11:06
Отправитель: THE_PRO


Отвечает sir henry

Доброе время суток, Kirill!
Скорее всего так и есть :)).
Т.е. Вы компилируете программу с добавлением информации для debug. По всей видимости у Вас или поврежедна эта DLL или Delphi установлен неправильно. Переустановите Дельфи.

Ответ отправлен: 31.01.2004, 04:14
Отправитель: sir henry


Отвечает samum2000

Доброе время суток, Kirill!
Потомучто библиотека BORDDBK70.DLL отсутствует (а может битая), вот Delphi и ругается. Только зачем ему такая? Кстати, у меня она тоже не установлена, но в файлах установки я такую нашел, поэтому если сильно надо - могу поделиться.
Попутного ветра!

Ответ отправлен: 02.02.2004, 13:53
Отправитель: samum2000


Отвечает Pawel

Здравствуйте, Kirill!
У вас повреждена или отсутствует библиотека отладчика BORDDBK70.DLL.
Переустановите delphi

Ответ отправлен: 31.01.2004, 13:25
Отправитель: Pawel


 Вопрос № 1292

Здравствуйте, уважаемые эксперты!
У меня такой вопрос. Когда программа, написанная на Delphi, производит какие-то действия (например, вычисление числа "пи" до энного знака после запятой), она становится недоступной для пользователя. Хотелось бы добавить возможность прервать действие в любой момент, но как это сделать?
Мне тут в другом месте посоветовали использовать Application.ProcessMessages - кто-нибудь знает, что это за зверь, и с чем его едят?



Вопрос отправлен: 31.01.2004, 02:12
Отправитель: Русских Денис

[Следующий вопрос >>] [Список вопросов]

Отвечает CJ

Приветствую Вас, Русских Денис!
Ну ставишь его перед твоим тормозящим кодом, можешь и после поставить.

Ответ отправлен: 31.01.2004, 12:27
Отправитель: CJ


Отвечает THE_PRO

Приветствую Вас, Русских Денис!
On posilayet "Win Msg" oknam i oni prerivayut rabotu progi.


Ответ отправлен: 31.01.2004, 11:05
Отправитель: THE_PRO


Отвечает Tano

Приветствую Вас, Русских Денис!
Application.ProcessMessages; необходимо написать внутри цикла вычислений, только так, чтобы она вызывалась не каждый шаг цикла иначе вычисления будут сильно тормозиться. Я например так (допустим i - счетчик в цикле, можно специально ввести свой отдельный счетчик):
if (i mod 1000)=0 then Application.ProcessMessages;
- обработка на каждой 1000-й интерации цикла
Эта процедура вызывает обработчик системных собщений к форме, а пока твой цикл считает, сообщения форме накапливаются (такие как нажатые клавиши, команда перерисовки формы и пр.)

Ответ отправлен: 31.01.2004, 10:06
Отправитель: Tano


Отвечает Pawel

Доброе время суток, Русских Денис!
Когда вы работаете в delphi с формами (Tform) то
сушествует такой класс, как application, предоставляющий определённые возможности.
Application.ProcessMessages - обновление, перерисовка окна, обработка всеш сообшений окна. Позволяет работать с формой при работе цикла(см. прил.)

Приложение:

Ответ отправлен: 31.01.2004, 13:22
Отправитель: Pawel


Отвечает samum2000

Добрый день, Русских Денис!
Этот метод приостанавливает выполнение задачи для обработки всех сообщений Windows, которые накопились к текущему моменту, когда очередь сообщений становится пустой, он возвращает обработку процедуре. Например, если ты заполняешь в цикле Listbox большим количеством значений, то во время работы цикла ты не сможешь изменять размеры формы, прокручивать свой scrollbox и т.п. Если в цикл добавить строку
Application.ProcessMessages;
то ты сможешь выполнять все вышеописанные действия, т.к. программа остановит выполнение цикла, обработает сообщения, и продолжит выполнение цикла.
Попутного ветра!

Ответ отправлен: 02.02.2004, 13:50
Отправитель: samum2000


Отвечает Bob Johnson

Здравствуйте, Русских Денис!
1. Используй второй поток для трудоемких вычислений - это наиболее правильный путь. Тогда основной поток продолжает обрабатывать сообщения и программа не "виснет".
2. Да, используй processmessages - когда ты вызываешь эту функцию, твоя программа обрабатывает все сообщения, находящиеся в очереди на данный момент. Если ты будешь делать это регулярно (например, 10 раз в секунду), то программа не будет зависать.

* EMan1.5: ---===*** The game we play ***===---


Ответ отправлен: 31.01.2004, 22:54
Отправитель: Bob Johnson


Отвечает Boriss

Добрый день, Русских Денис!
Лучше всего в таких случаях использовать потоки Thread (класс TTHread). Есть описание во всех учебниках и в примерах.
Идея виндовской многопоточности - каждая программа (сама поток) может создавать потоки, каждый из которых выполняется отдельно. То есть, создаете поток и поручаете ему вычисления, а в это время основной поток делает еще что-то. Хорошей практикой является: поток должен работать с "локальной" копией данных. Программа тогда может их менять


Ответ отправлен: 02.02.2004, 09:16
Отправитель: Boriss


 Вопрос № 1293

Добрый вечер!
Столкнулся с такой проблемой, требуется помощь. Делфи 5 , функция FileExists - при размещении файла по пути в стандарте DOS (не более одного слова в имени директории) все работает на отлично, но только путь становиться в виде C:Documents and SettingsАдминистраторМои документытарам-пам-пам.... все! False при любом раскладе , что есть по пути файл что его нет :( Help me, please!



Вопрос отправлен: 31.01.2004, 19:48
Отправитель: sergey

[Следующий вопрос >>] [Список вопросов]

Отвечает Tano

Добрый день, sergey!
Попробуй передавать длинный путь, заключая его в двойные кавычки.

Ответ отправлен: 31.01.2004, 21:16
Отправитель: Tano


Отвечает Pawel

Здравствуйте, sergey!
Используй WinExec(fileName,SW_...)
или
ShellExecute(hwnd,0,FileName,0,0,sw_...);

Ответ отправлен: 31.01.2004, 20:15
Отправитель: Pawel


Отвечает sir henry

Здравствуйте, sergey!
А Вы ничего не путаете?
Я для проверки собрал такую программку (см. приложение) и у меня все в порядке, работает как с длинными именами, так и с короткими :).
Вы кодировку русских символов, случайно, не путаете? Т.е. вместо ср1251 по-русски не dos866 применяете?

Приложение:

Ответ отправлен: 02.02.2004, 09:14
Отправитель: sir henry


Отвечает THE_PRO

Доброе время суток, sergey!
Eto potomu chto ti rabotayesh v WinNT!
A vot vopros ya tak i ne ponyal...!


Ответ отправлен: 02.02.2004, 10:27
Отправитель: THE_PRO


Отвечает Boriss

Приветствую Вас, sergey!
Странно, никогда такой бяки не замечал. Сейчас у меня 7-ой, специально проверил, все работает нормально. Может слэши забываете?

Ответ отправлен: 03.02.2004, 12:59
Отправитель: Boriss


 Вопрос № 1294

Как по нажатии на кнопку изменить системную дату на 10 дней назад, а по нажатии на вторую вперед!


Приложение:


Вопрос отправлен: 31.01.2004, 22:47
Отправитель: Кирилл (karatetski@tut.by)

[Следующий вопрос >>] [Список вопросов]

Отвечает Bob Johnson

Здравствуйте, Кирилл!
GetSystemTime и SetSystemTime.

* EMan1.5: ---===*** The game we play ***===---


Ответ отправлен: 01.02.2004, 13:45
Отправитель: Bob Johnson


Отвечает samum2000

Доброе время суток, Кирилл!
См. функцию в приложении. Только там надо делать поправочку на текущий часовой пояс (например, у меня GMT+6, значит отнять надо 6).

Приложение:

Ответ отправлен: 02.02.2004, 13:50
Отправитель: samum2000


Отвечает vitya

Здравствуйте, Кирилл!
Функция SetSystemTime к вашим услугам.

Ответ отправлен: 01.02.2004, 11:44
Отправитель: vitya


Отвечает sir henry

Доброе время суток, Кирилл!
Установка системного времени:
function SetLocalTime(const lpSystemTime: TSystemTime): BOOL;
TSystemTime = record
wYear: Word;
wMonth: Word;
wDayOfWeek: Word;
wDay: Word;
wHour: Word;
wMinute: Word;
wSecond: Word;
wMilliseconds: Word;
end;
Структура TSystemTime просто превосходна, по сравнению с родной паскалевской и без всякого напряга позволяет проводить любые вычисления с временем.
Получить системное время:
procedure GetLocalTime(var lpSystemTime: TSystemTime);

Ответ отправлен: 02.02.2004, 10:44
Отправитель: sir henry


Отвечает Boriss

Здравствуйте, Кирилл!
Меняет системное время и дату функция SetSystemTime.
Для нее нужно время и дата в своем формате.
Есть в SysUtils для этого:
procedure DateTimeToSystemTime(DateTime: TDateTime; var SystemTyme: TSystemTime);
А можно, например и так, как в приложении

Приложение:

Ответ отправлен: 03.02.2004, 13:16
Отправитель: Boriss



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (24)
C / C++ (15)
Perl (2)
Builder / Delphi (17)
Pascal (18)
Basic / VBA (7)
Java / JavaScript (3)
PHP (11)
Криптография (4)
WinAPI (10)
Радиоэлектроника (5)
Пользователю
Windows 95/98/Me (45)
Windows NT/2000/XP (61)
"Железо" (35)
Поиск информации (17)
Администратору
Windows NT/2000/XP (32)
Linux / Unix (12)
Юристу
Гражданское право (16)
Семейное право (10)
Трудовое право (12)
КоАП (11)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2004 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное