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

Рассылка сайта Delphi coding

  Все выпуски  

Рассылка сайта Delphi coding Delphi coding (7.12.05)


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

Рассылка сайта Delphi Coding

Выпуск от 07 Декабря 2005 года. Noil.pri.ee

Приглашаються авторы статей для сотрудничества с сайтом. Подробности о том как добавить свою статью на сервер читайте здесь

На сайте Delphi Coding собрано большое количество статей, книг и различной компьютерной документации. В рассылке вы сможете увидеть последнии поступления на сайте, а также более подробно ознакомиться с некоторыми материалами.

Желаем Вам приятного чтения.


Архивы статей по различным тематикам Delphi

Коллекции статей

Коллекция статей № 1Скачать (Статей: 20)
Коллекция статей № 2Скачать (Статей: 20)
Коллекция статей № 3Скачать (Статей: 20)
Коллекция статей № 4Скачать (Статей: 20)

Последнии файлы

Start Button move v.1.0 в категории Система

Простая программа, которая перемещает меню «Старт» с лева направо и справа на лево.

Полная функциональность.
Исходный код.
Пример приложения.


Поддерживаемые версии: D2005 D2006 D6 D7
Автор: Adil Aliev

Подробнее... Скачать


Песня "Винни" в категории Для души

Песня про Винипуха на мотив Арии.

Подробнее... Скачать


Песня "Оское" в категории Для души

Песня посвешаетса пиву.

Подробнее... Скачать


Песня "Мутный" в категории Для души

Песня о вреде пьянства.

Подробнее... Скачать


Песня "Гопкин" в категории Для души

Песня про гопника.

Подробнее... Скачать


Песня "Батареи" в категории Для души

Песня про атопительный сезон.

Подробнее... Скачать


Ultimate Color Picker Dialogs v.050929 в категории Стандартные

Пакет рабочих диалогов для работы с цветом в Delphi. Один диалог для просмотра сохраненных цветов, и второй, для выбора любого цвета используя Оттенок / Насыщенность / Яркость.

Тестировалось на Delphi 3, 4, 5 и 2005(Win32 и .NET) Также работает в Delphi 2 с небольшими внешними дефектами.

Полная функциональность.
Исходный код.
Пример приложения.


Поддерживаемые версии: D2005 D2006 D3 D4 D5 D6 D7

Автор: SimpleWebsiteNavigation.com

Подробнее... Скачать


LMD-Tools SE v.7.03 в категории Библиотеки компонентов

LMD Tools Special Edition это коллекция из более 100 VCL компонентов, которые вы можете включить в свою приложение согласно свободной лицензии и без дополнительных файлов для распространения. Buttons, Dialogs, Multimedia, System, Data-aware, Container, Standard, Label и другие улучшенные компоненты доступны разработчикам для построения профессиональный приложений, быстрее и удобней чем раньше.

Если вы желаете расширить функциональные возможности существующих VCL компонентов, то LMD-Tools решение достойное Вас. Вместе с компонентами предоставляется большое количество примеров, которые демонстрируют возможности компонентов из библиотеки. Автоматическая установка и файл помощи также предоставлен. Для пользователей Delphi 8 и Delphi 2005 предоставлено поддержка как Win32 так и VCL.NET


Полная функциональность.
Исходный код отсутствует


Поддерживаемые версии: CB5 CB6 D2005 D5 D6 D7

Автор: LMD Innovative

Подробнее... Скачать


ReaThinClient SDK v.1.7f в категории Http

RealThinClient SDK : лёгкий путь для построения Интернет приложение.

Позволяет писать программы сервер/клиент, работающие через Интернет, а также ISAPI расширения (посылать/принимать файлы, писать/вызывать функции удаленного клиента, всё это в сочетании с дружелюбностью к файрволу.)

Особенности RTC SDK компонентов:


  • Стабильность работы
  • Дружелюбность к файрволу
  • Мульти-поточность
  • Высокий уровень защиты
  • Высокий уровень оптимизации
  • Поддержка plug-in
  • Легкие в работе и освоении.


Используй RTC Client компоненты для того что бы:

  • Вызывать функции удаленного клиента
  • Посылать и принимать сообщения
  • Закачивать и скачивать файлы
  • Удалёно запускать скрипты и программы.


Используй RTC Server компоненты для того что бы:

  • Писать функции для удалёного клиента
  • Посылать и принимать сообщения
  • Обрабатывать данные и файлы «на лету»
  • Строить динамические web-приложения
  • Передача файлов через сеть и Интернет


Написанный на RTS Сервер может быть, скомпилирован как(без модификации исходного кода):

  • Автономный сервер.
  • Сервер Windows NT/2000/ XP
  • ISAPI расширение, для выполнение на поддерживающем ISAPI Сервере


Приобретая, коммерческую лицензию RTC SDK вы получаете:

  • Полный исходный код RTC SDK компонентов
  • Полный исходный код всех RTC SDK примеров.
  • Бесплатное обновление на год.


Не коммерческую версию с полным исходным кодом RTC SDK компонентов можно скачать с http://www.realthinclient.com

Частично ограниченный
Исходный код: по требованию


Поддерживаемые версии: D2005 D4 D5 D6 D7

Автор: Danijel Tkalcec

Подробнее... Скачать


AOSDK v.0.8 в категории Звук

AOSDK v.0.8 это «базовые классы» основанные на библиотеке Bass.dll (Включена в архив). Предоставляет широки возможности для создание аудио-плеера.

Особенности:


  • Поддержка форматов плайлистов Pls и M3u,
  • 10 различных эквалайзеров
  • Быстрое декодирование аудио-потока
  • mp1/mp2/mp3/ogg/wav потоки
  • mod/s3m/it/umx/mo3/xm/mtm модули
  • Редактор тегов ID3 1.1
  • Поддержка Интернет потоков


Полная функциональность.
Исходный код.


Поддерживаемые версии: D2 D3 D4 D5 D6

Автор: Porzillosoft Inc

Подробнее... Скачать


Статья

Ш_кодинг

Что такое Ш_кодинг?
Это написание кода для того, чтобы вызвать у пользователя программы какие-либо чувства.
Например:
Озадачить пользователя... (Программа - эмулятор вируса)
Обрадовать его... (Программа - подарок)
Рассмешить... (Программа - шутка, например преобразования схем Windows)
И т.д...
Что ужно для написания Ш_кода?
1. Хорошо знать предмет с которым будем Ш_кодить.
2. Уметь читать код других программистов и разбираться в нём.
3. Уметь находить необходимую информацию.
Самое главное, конечно желание...Ш_кодить удобнее всего в Win9x, но интереснее в WinXP. Ну-с, начнём... Ш_код № Раз_1. Во главе угла как обычно стоит ИДЕЯ. Т.е. то, что же мы хотим сделать, и на какой ОС это будет работать... (хотя вторая часть вопроса обычно опускается, но для полноты ощущений пусть будет). ИДЕЯ: Хочу, чтоб при загрузке ПК под Win98 у клиента выскакивала какая-нить надпись и каждый раз новая... типа шуток от Фоменко. И приятно... и полезно... %). Для создания данной программы у нас есть несколько путей:
Программа будет запускаться после полной загрузки Windows и выдавать стандартное системное сообщение.
Программа будет запускаться после полной загрузки Windows и выдавать своё сообщение, т.е. интересующего нас вида.
Программа будет запускаться во время загрузки Windows и выдавать стандартное системное сообщение.

Рассмотрим все варианты.
Плюсы - программу можно будет сделать минимальных размеров. Минусы - некрасиво, дополнительный код для проверки загрузки через реестр.
Плюсы - оформление можно сделать любое. Минусы - программа получается "тяжёлая".
Плюсы - программа работает исключительно на реестр, средние размеры программы и ни чего лишнего. Т.к. мы собираемся работать с реестром Windows, необходимо ознакомиться с тем, что же такое реестр и как с ним работать в Delphi... Берём книжки умные и читаем...

Что нам надо от реестра?

1. Прописать нашу программу в автозагрузку.
2. Узнать где в реестре располагается приветствие Windows.

Ну и как? Узнали... тогда продолжм... А теперь лезем в Интернет и ищем там приколы... Нашли? Хорошо... преобразуем их в текстовый формат, располагая по 1 приколу в строке. Соханим наш текстовый файл под именем pricol.txt Ну вот.. вроде подготовительный этап завершён. Остался чистый Ш_кодинг. Запускаем Delphi, создаём новый проект. Удаляем из проекта всё "лишнее", т.е. форму. В меню выбираем Project->Remove from project... В диалоговом окне, появившемся на экране, выбираем Unit1 и нажимаем Ок. В меню выбираем Project->View Source. Тем самым мы вызвали непосредственно код нашего проекта, предложенный Borland. Оставляем строчку

program ...

без изменений.
Остальное заменяем кодом:

{$A+,B-,D-,F-,G+,I-,K-,L-,N-,P-,Q-,R-,S-,T-,V-,W-,X+,Y-}
uses WinTypes, WinProcs;
begin
MessageBox(GetActiveWindow, 'Привет!!!', 'Фраза', MB_ICONINFORMATION OR MB_OK);
end.


Что мы сделали?
Мы подготовили программу к запуску и написали всего две функции для вывода стандартного информационного сообщения и определения активного окна.

int MessageBox(
HWND hWnd, // Хэндл окна предка
LPCTSTR lpText, // Текст сообщения
LPCTSTR lpCaption, // Текст заголовка
UINT uType // Стиль сообщения
);


и

func GetActiveWindow:HWND; //Возвращает хэндл активного окна (вместо её можно было и 0 поставить...)

Соханим наш проект под именем my_mess.dpr
Первый этап Ш_кодинга благополучно завершён.
Откомпилируем проект (клавиша F9)
Урра!!! Заработало...
Посмотрим размер файла... У меня 14Kb...
Добавим к нашей программе умение встраиваться в Автозагрузку.
Для этого в раздел uses добавим модуль Registry. Для работы с файлами добавим модуль SysUtils.
И напишем обработку автозагрузки реестра.
Мы уже знаем, что автозагрузка осуществляется из раздела:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Создадим переменную Reg типа TRegistry;
И напишем код:

uses WinTypes, WinProcs, Registry, SysUtils;
var Reg:TRegistry; // Объявление переменной Reg типа TRegistry
begin
MessageBox(GetActiveWindow, 'Привет!!!', 'Фраза', MB_ICONINFORMATION OR MB_OK);Reg:=TRegistry.Create; //Создаём переменную
Reg.RootKey:=HKEY_LOCAL_MACHINE; // Задаём корневой каталог для работы
Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',False); //Открываем раздел
Reg.WriteString('my_mess',ExtractFilePath(ParamStr(0))+'my_mess.exe'); //Записываем в раздел строковый параметр 'my_mess' и указываем путь к нашей программе.
// Т.к. мы не знаем, где она у нас находится, пишем автоопределение пути через ExtractFilePath
Reg.CloseKey; //Закрываем раздел
Reg.Free; // Уничтожаем переменную
end.


Компилируем программу (F9).
Начало положено.
Теперь надо подключить к программе наш текстовый файл с приколами.
Для начала переместим его в одну папку с программой.
Создадим переменную F типа TextFile и подключим.
Наш окончательный код:

program my_mess;
{$A+,B-,D-,F-,G+,K-,L-,N-,P-,Q-,R-,S-,T-,V-,W-,X+,Y-}//,I-}
uses WinTypes, WinProcs, Registry,SysUtils;
var Reg:TRegistry;
F:TextFile; //Создаём переменную F типа TextFile
I,Cou:Integer;//Создаём переменные I и Cou типа Integer (Это будет наш счётчик)
S:String; //Создаём переменную S для чтения данных из файла
begin
Assign(F,'pricol.txt');// Ассоциируем F С файлом 'pricol.txt'
Reset(F); //Открываем файл 'pricol.txt'
randomize; //Инициализируем генератор случайных чисел
Cou:=Random(41)+1;//Присваиваем Cou случайное число от 1 до 41 (Число строк в файле)
For I:=1 to Cou do Readln(F,S); //Считываем из файла строки с 1-й до случайной в переменную S
CloseFile(F); //Закрываем файл

MessageBox(GetActiveWindow, PChar(S), 'Фраза', MB_ICONINFORMATION OR MB_OK);

Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',False);
Reg.WriteString('my_mess',ExtractFilePath(ParamStr(0))+'my_mess.exe');
Reg.CloseKey;
Reg.Free;
end.


Программа готова. Всего 22 строчки кода и размер программы 94,5Kb.
Теперь нам надо создать откат. Т.е. программу, которая будет запрещать работу нашего прикола.
Самый простой вариант - создание REG файла. Читали книжку по реестру? Тогда Начнём.
Создайте текстовый файл следующего содержания:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"my_mess"=-

Сохраните этот файл как otkat.reg
При запуске данного файла убирается запись реестра, созданная нами в программе.
Из папки, в которую мы сохраняли нашу программу нам необходимы следующие файлы:
1. my_mess.exe
2. pricol.txt
3. otkat.reg

Исходники(4, 34Kb) Программа(50Kb)

Скопируем их в отдельную папку...
Остаётся подарить данную папку с файлами... и запустить my_mess.exe хотя бы 1 раз.Ш_код № Раз_2
Теперь сделаем красивую (ну... относительно конечно) версию.
Создадим новый проект в Delphi.
Сохраним файлы проекта в отдельной папке со следующими названиями:
Модуль: main.pas
Проект: my_mess_cool.dpr
В эту же папку скопируем наш текстовый файл с приколами pricol.txt
Дважды кликнем на форме проекта и в предлагаемую Delphi процедуру запишем следующее.

procedure TForm1.FormCreate(Sender: TObject);
var Reg:TRegistry;
F:TextFile;
I,Cou:Integer;
S:String;
begin
AssignFile(F,'pricol.txt'); //Строка изменена, поскольку у нас появился модуль Classes в котором функция Assign перекрывается, что ж воспользуемся другой... %)
Reset(F);
randomize;
Cou:=Random(41)+1;
For I:=1 to Cou do Readln(F,S);
CloseFile(F);
Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',False);
Reg.WriteString('my_mess',ExtractFilePath(ParamStr(0))+'my_mess.exe');
Reg.CloseKey;
Reg.Free;
end;


Тут объяснять особо не чего см. Ш_кодинг № Раз_1.
Дополним раздел uses модулем Registry.
Заголовок формы (Свойство Caption) изменим на "Фраза"
Свойство Color изменим на clLime,
Свойство Position изменим на poScreenCenter
Свойство AutoSize изменим на True,
Свойство BorderStyle изменим на bsNone и уменьшим размер формы.На форму кинем компонент TLabel.
Свойство WordWrap изменим на True,
Свойство AutoSize изменим на True,
Свойство Align изменим на alNone,
Свойство Alignment изменим на taCenter,
Поставим шрифт побольше, покрасивее и пожирнее.
Войдём на вкладку Events и дважды кликнем на OnClick.
В появившемся окне напишем код:

procedure TForm1.Label1Click(Sender: TObject);
begin
Halt(1);
end;


И в процедуре TForm1.FormCreate(Sender: TObject);
наберём строку:

...
Label1.Caption:=S;
...


Вот и всё... можно запускать...
Аналогично, как и в первый раз из папки, в которую мы сохраняли нашу программу, для подарка нам необходимы следующие файлы:
1. my_mess_cool.exe
2. pricol.txt
3. otkat.reg - тот же, что и в первый раз.

Исходники(5,18Kb) Программа(199Kb)

Ш_кода № Раз_3

Я предлагаю её упростить до невозможности...
Нам не понадобится знание Delphi...
Единственное, нам тут понадобится умение работать с REG-файлами и знание реестра.
Создадим текстовый документ, откроем его.
Напишем следующий код:

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon]
"LegalNoticeCaption"="Ваш заголовок"
"LegalNoticeText"="Ваш текст"

На месте, где у меня "Ваш заголовок" нужно написать заголовок окна, которое будет выводиться...
На месте, где у меня "Ваш текст" нужно писать само сообщение...
Оно и будет появляться непосредственно при загрузке Windows.
Сохраните ваш файл как message98on.reg
Вам осталось только запустить данный файл на компьютере клиента(хм... ну, товарища вашего).
Для избавления от данного сообщения достаточно написать файл с содержанием:

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon]
"LegalNoticeCaption"=-
"LegalNoticeText"=-

И сохранить его под именем message98of.regПод WinNT, следует в ваших файлах поменять раздел на:
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon

Исходники Программа(449byte)

При желании здесь так же несложно сделать вывод различных сообщений на экран, если привязать вашу программу Ш_код № Раз_1 к этим записям реестра, но непоказывать сообщение. Так же возможно определение версии Windows и привязка программы уже к конкретной версии. Попробуйте сами...Это были небольшие трюки с реестром.
Реестр - шикарная штука для экспериментов над Windows, единственное, что необходимо ЧЁТКО ЗНАТЬ ЧТО ВЫ ДЕЛАЕТЕ... или НЕ ДЕЛАТЬ ЭТОГО ВОБЩЕ.

Автор: AlFox
Сайт автора: http://www.sunfox.ru/

Посетите наши форумы:

Delphi, Kylix, Pascal
Delphi - общие вопросы | WinAPI | Работа с сетью | Delphi и Multimedia | Базы данных | Работа с oc Windows | Курилка | Паскаль | Delphi.Net | Kylix

Языки программирования
C++ | Java | .NET | Ассемблер

Web Технологии
Php | Perl | Asp | Html

Програмное обеспечение
Софт для Windows | Oc Windows | Linux | BSD

Разное
Железо | Взлом и защита | Периферия | Внекомпьютерная жизнь | Объявления

Дружественные рассылки

Рассылки Subscribe.Ru
Интернет для Delphi-программиста

На этом позвольте проститься с Вами и пожелать удачи. Свои замечания и предложения отправляйте на е-майл, указанный ниже. С уважением, Виталий (NoilTeam@gmail.com)

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphicoding
Архив рассылки
Отписаться
Вспомнить пароль

В избранное