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

Обоснование выбора технологии и программных средств для разработки утилиты. Требования к функциональным характеристикам и моделирование предметной области. Спецификация вариантов использования и расчет показателей экономической эффективности проекта.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 13.12.2013
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

- HDD 60 MB;

- CPU Intel Pentium III 1.8 GHz;

- 512 MB RAM;

- интегрированная или VGA видеокарта;

- сетевая карта;

- клавиатура;

- мышь.

Рекомендуемые требования к аппаратуре пользовательского компьютера:

- HDD 60 MB;

- CPU Intel Pentium III 1.8 GHz;

- 512 MB RAM;

- сетевая карта;

- клавиатура;

- мышь.

2.5 Программные интерфейсы

Программный интерфейс -- функциональность, которую некоторый программный компонент предоставляет другим программным компонентам. Можно различать два вида такой функциональности: та, что используется при создании прикладных программ, и та, что используется при создании системных компонентов. Первая обычно называется интерфейсом программирования приложений (API, англ. application programming interface), вторая может называться интерфейсом программирования компонентов операционной системы или интерфейсом системного программирования (SPI, англ. system programming interface). Кроме того, программные интерфейсы могут быть разноуровневыми, относясь либо к уровню программного кода (API и SPI), либо к уровню кода машинного.

Для корректной работы программы на всех компьютерах сети должны быть установлены операционные системы семейства Microsoft Windows (95/98/2000/ME/XP).

2.6 Требования к реализации

Приложение написано и скомпилировано в интегрированной среде разработки (IDE) Borland Delphi 7 с использованием стандартных визуальных и не визуальных компонент библиотеки VCL.

Между серверной и клиентской частями программы TCP-соединение происходит посредством компанент TIdTCPClient и TIdTCPServer.

Установление связи и передача данных в поток на клиентской стороне реализованы в процедуре ipcomand.

procedure TForm1.IpComand(Comand:string);

var xx,i1,ii:integer;

begin

xx:=0;

ii:=0;

if SelectedCount > 0 then

for xx:=0 to SelectedCount-1 do

begin

i1:=xx;

//if (TCPClient.connected=true) and (TCPClient.Host = fadd[xx]) then

//tcpclient.port:=defaultipport;

try

TCPClient.Disconnect;

tcpclient.Host:=fadd[xx];

tcpclient.port:=defaultipport;

TCPClient.Connect;

if comand= '' then if sc >1 then

for ii:=0 to sc do

begin

tcpclient.writeln(sicom[ii]);

// sleep(10);

end

else

else

tcpclient.writeln(comand);

except

// continue;

Memo1.Lines.Add('Неудается установить связь с '+fadd[i1]);

end;

end;

fillchar(sicom,sizeof(sicom),0);sc:=0;

end;

Происходит установление связи и заполнение полей компаненты TCPClient. В поле «IP-адрес» записывается адрес из массива адресов fadd[]. В поле «порт» записывается статический порт 8090.

Далее посредством функции writeln(string) в поток записывается строковая команда.

Для перехода в режим визуального управления запускается компонент TTim

er1.

procedure TForm1.Timer1Timer(Sender: TObject);

var

a:TMemoryStream;

j:tjpegimage;

x,y:integer;

s12:string;

begin

with tcpclient do

begin

try

j:=TJPEGImage.Create;

a:=TMemoryStream.Create;

//writeln(#13+#10);

ipcomand('GSS');

s12:=uppercase(readln);

if s12 = 'TRUE' then

begin

x:=readinteger;

y:=readinteger;

begin

// ReadStream(a,readinteger,false);

ReadStream(a,-1,true);

end;

A.Seek(0,soFromBeginning);

j.LoadFromStream(A);

form4.Canvas.Draw(x,y,j);

end;

inc(i);

j.Free;

a.Free;

//finally

form4.Panel1.Caption:='Визуальное управление: '+ListBox1.Items[0];

except

form4.Close;

timer1.enabled:=false;

end;

end;

end;

Здесь происходит инициализации переменной типа TJPEGImage для визуализации удаленного рабочего стола. Открывается поток и в переменную записываются данные потока.

Сервер на действия реагирует посредством процедуры TCPServerExecute.

procedure TForm1.TCPServerExecute(AThread: TIdPeerThread);

var

m,s,SRequest: string;

id:cardinal;

f:boolean;

Status : TMemoryStatus;

c:Double;

i:integer;

begin

with AThread.Connection do

while Connected do

begin

SRequest := UpperCase(Readln);

//Отправляем снимок экрана

if SRequest = 'GSS' then

begin

try

SWCH;////

f cansend then

begin

writeln('TRUE');

writeinteger(xmin);

writeinteger(ymin);

begin

OpenWriteBuffer;

writestream(b,true);

closewritebuffer;

end;

end;

finally

f not cansend then writeln('FALSE');

Disconnect;

xmax:=0;

ymax:=0;

xmin:=maxint;

ymin:=maxint;

b.free;

b:=TMemoryStream.Create;

end;

end;

Далее представлен пример реакции сервера на команду клиента:

if SRequest = 'MODO' then

begin

SetMouseDown(strtoint(readln),strtoint(readln));

end;

if SRequest = 'KEDO' then

begin

SetKeydown(strtoint(readln));

end;

if SRequest = 'KEUP' then

begin

SetKeyup(strtoint(readln));

3 Специальная часть

3.1 Моделирование предметной области

Предметная область - часть реального мира, рассматриваемая в пределах данного контекста. Под контекстом здесь может пониматься, например, область исследования или область, которая является объектом некоторой деятельности.

Моделирование предметной области является одним из наиболее важных этапов работ при проектировании программных систем масштаба предприятия.

Итак, основными задачами при моделировании предметной области являются описания:

- бизнес-процессов предприятия;

- действующих лиц бизнес-процессов и их функций, подлежащих автоматизации в привязке к структуре автоматизируемого предприятия;

- бизнес сущностей;

- сценариев выполнения бизнес-функций, подлежащих автоматизации;

- состояний бизнес-сущностей;

- бизнес-правил.

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

3.1.1 Моделирование бизнес-процессов

На начальном этапе анализа и изучения системы происходит моделирование средствами методологии IDEF0.

IDEF0 - Function Modeling - методология функционального моделирования и графическая нотация, предназначенная для формализации и описания бизнес-процессов. Отличительной особенностью IDEF0 является её акцент на соподчинённость объектов. В IDEF0 рассматриваются логические отношения между работами, а не их временнамя последовательность (WorkFlow).

На рисунках 14 и 15 представлены работа IT-отдела предприятия в целом и декомпозиция деятельности IT-отдела.

Рисунок 14. Деятельность IT-отдела предприятия

Рисунок 15. Деятельность IT-отдела предприятия (декомпозиция)

На вышеуказанных диаграммах представлена деятельность IT-отдела предприятия, основными функциями которой являются:

- настройка программного обеспечения компьютеров;

- настройка аппаратного обеспечения компьютеров;

- наладка сетевого оборудования.

В ходе анализа, в целях уменьшения затрат предприятия на администрирование путем сокращения кадров, было принято решение автоматизации процесса «настройка программного обеспечения компьютеров».

3.2 Спецификация вариантов использования

3.2.1 Р аспределение требования по субъектам и вариантам использования

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

При работе с вариантами использования важно помнить несколько простых правил:

- каждый вариант использования относится как минимум к одному действующему лицу;

- каждый вариант использования имеет инициатора.

Вариант использования представляет собой последовательность действий (транзакций) выполненных системой в ответ на события, инициируемые действующим лицом. Вариант использования описывает типичное взаимодействие между пользователем и системой и отражает представления о поведении системы с точки зрения пользователя.

Итак, после автоматизации и внедрения утилиты Remote Administration Tools «настройка программного обеспечения компьютеров» включает в себя следующие прецеденты:

- подключение к управляемому компьютеру;

- получение системной информации о компьютере;

- получение информации о запущенных процессах и приложениях на администрируемом компьютере;

- перехват управления над клавиатурой и «мышью» администрируемого компьютера;

- переход в режим визуального управления;

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

На рисунке 16 представлена диаграмма вариантов использования.

Рисунок 16. Диаграмма вариантов использования

Построим таблицу, которая распределяет функциональные требования по субъектам и прецедентам.

В таблице 4 представлено распределение требований по субъектам и вариантам использования.

Таблица 4

Распределение требований по субъектам и вариантам использования

Требования

Субъект

Прецедент

Администратор выбирает по IP-адресу и условному имени компьютер, подлежащий наладке, и подключается. Приложение, в случае невозможности подключения выдает сообщение с текстом ошибки.

Системный администратор

Подключение к

удаленному компьютеру

Требование

Субъект

Прецедент

Администратор, используя функцию «получение системной информации», узнает необходимую ему информацию об управляемом компьютере.

Системный администратор

Получение системной информации об

удаленном компьютере

Приложение создает список всех запущенных процессов и приложений на удаленном компьютере и выдает его администратору.

Системный администратор

Получение информации о

запущенных процессах и

приложениях на

администрируемом компьютере

Администратор подает запрос приложению о перехвате управления над клавиатурой и мышью удаленного компьютера. Система обрабатывает запрос и выдает право управления администратору.

Системный администратор

Перехват управления над

клавиатурой и

«мышью» администрируемого компьютера

Серверное приложение обрабатывает и передает вид удаленного рабочего стола клиентскому приложению.

Системный администратор

Переход в режим визуального управления

Администратор вызывает удаленную командную строку. Система передает право запуска приложений администратору.

Системный администратор

Возможность запуска приложений на

удаленном компьютере

3.2.2 Описательная спецификация варианта использования

На таблицах 5-10 представлена описательная спецификация вариантов использования.

Таблица 5

Спецификация прецедента «Подключение к удаленному компьютеру»

Параметры прецедента

Описание

ВИ

Подключение к удаленному

компьютеру.

ID

1

Краткое описание

Установление соединения между компьютерами администратора и пользователя.

Основное действующее лицо

Системный администратор.

Предусловия

Для установления связи между пользовательским и

администраторским компьютерами необходимо, чтобы на обоих компьютерах были установлены серверные и клиентские части соответственно.

Основной поток

- прецедент начинается после установки соответствующего ПО на администраторский и

- пользовательский компьютеры;

- утилита проверяет наличие связи и устанавливает ее, в противном случае выдает сообщение о невозможности установления связи.

Альтернативные потоки

Нет.

Постусловия

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

Таблица 6

Спецификация прецедента «Получение системной информации об удаленном компьютере»

Параметры прецедента

Описание

ВИ

Получение системной информации об удаленном компьютере.

ID

2

Краткое описание

Запрос на получение системной информации об операционной системе, файловой системе и пр.

Параметры прецедента

Описание

Основное действующее лицо

Системный администратор.

Предусловия

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

Основной поток

- прецедент начинается после установления связи между клиентским и серверными машинами;

- администратор, используя функцию «получение системной информации», узнает необходимую ему информацию об управляемом компьютере.

Альтернативные потоки

Нет.

Постусловия

Нет.

Таблица 7

Спецификация прецедента «Информация о запущенных процессах и приложениях»

Параметры прецедента

Описание

ВИ

Информация о запущенных процессах и приложениях.

ID

3

Краткое описание

Получение информации о запущенных процессах и приложениях на администрируемом компьютере.

Основное действующее лицо

Системный администратор.

Предусловия

Для получения информации о запущенных процессах и приложениях на удаленном компьютере необходимо, чтобы на обоих компьютерах были установлены серверные и клиентские части приложения.

Параметры прецедента

Описание

Основной поток

- прецедент начинается после установления связи между клиентским и серверными машинами;

- приложение создает список всех запущенных процессов и приложений на удаленном компьютере и выдает его администратору.

Альтернативные потоки

Нет.

Постусловия

Нет.

Таблица 8

Спецификация прецедента «Управление клавиатурой и «мышью» удаленного компьютера»

Параметры прецедента

Описание

ВИ

Управление клавиатурой и «мышью» удаленного компьютера.

ID

4

Краткое описание

Перехват управления над клавиатурой и «мышью» администрируемого компьютера в режиме визуального управления.

Основное действующее лицо

Системный администратор.

Предусловия

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

Основной поток

- прецедент начинается после установления связи между клиентским и серверными машинами;

- при переходе в режим визуального управления администратор включает опцию перехвата управления над клавиатурой и «мышью»;

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

Параметры прецедента

Описание

Альтернативные потоки

Нет.

Постусловия

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

Таблица 9

Спецификация прецедента «Режим визуального управления»

Параметры прецедента

Описание

ВИ

Режим визуального управления.

ID

5

Краткое описание

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

Основное действующее лицо

Системный администратор.

Предусловия

Для перехода в режим визуального управления необходимо установить связь между клиентским и серверным компьютерами.

Параметры прецедента

Описание

Основной поток

- прецедент начинается после установления связи между клиентским и серверным машинами;

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

Альтернативные потоки

Нет.

Постусловия

Клиентское приложение переходит в режим наблюдения или режим визуального управления над пользовательским компьютером.

Таблица 10

Спецификация прецедента «Запуск приложений на удаленном ПК»

Параметры прецедента

Описание

ВИ

Запуск приложений на удаленному ПК

ID

6

Краткое описание

Получение возможности удаленного запуска программ с использованием удаленной командной строки.

Основное действующее лицо

Системный администратор.

Предусловия

Для начала действия прецедента необходимо установление связи с удаленной машиной.

Основной поток

- прецедент начинается после установления связи между клиентским и серверным машинами;

- клиентская сторона после заполнения окна и выбора опций, передает серверу переменную типа string.

- Сервер, прочитав поток, запускает приложение в командной строке.

Альтернативные потоки

Нет.

Постусловия

Нет.

3.3 Моделирование динамических аспектов системы

3.3.1 Диаграммы последовательности

Диаграмма последовательности - методология объектно-ориентированного проектирования, предназначенная для моделирования взаимодействия во времени. Диаграмма последовательности позволяет отслеживать поведение взаимодействующих групп объектов.

На рисунке 17 изображена диаграмма последовательности для прецедента «визуальное управление удаленным компьютером».

Рисунок 17. Диаграмма последовательности для прецедента «визуальное управление удаленным компьютером»

Главным Actor'ом является системный администратор. Администратор запускает приложение и подает запрос клиентскому приложению о подключении к серверной машине. Приложение требует ввод IP-адреса пользовательского компьютера. После ввода адреса, клиентское приложение подключается к пользовательскому компьютеру посредством функции connect(). После получения ответа от сервера о положительной наладке связи, приложение выдает сообщение об удачном подключении и ждет дальнейших действий администратора.

Далее администратор подает запрос на визуальное управление удаленным компьютером. Приложение формирует сообщение и, посредством функции ipcomand(`GSS'), обращается к серверному приложению. Положительным ответом является сообщение `TRUE' и открытие потока для передачи изображения удаленного рабочего стола. Далее клиентское приложение передает визуальное управление удаленным компьютером системному администратору.

3.3.2 Диаграммы деятельности

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

Деятельность начинается с запроса системного администратора на подключение к удаленной машине. Система проверяет, есть ли указанная машина в списке машин, если нет, то предлагает указать IP-адрес, после чего вызывает функцию connect (). В случае некорректности IP-адреса следует заново его указать. Если коммутация прошла успешно, то серверное приложение присылает положительный ответ. Далее клиентское приложение переходит в состояние ожидания дальнейших действий администратора. Системный администратор дает команду перехода в режим визуального управления. Клиентское приложение открывает поток и записывает в поток результат функции ipcomand(`GSS'). Серверное приложение, находящееся в состояния чтения потока, начинает обрабатывать данные потока, после чего записывает в поток изображение удаленного рабочего стола и данные для управления удаленным компьютером. Клиентское приложение обрабатывает поток и передает управление системному администратору.

На рисунке 18 изображена диаграмма деятельности для прецедента «визуальное управление удаленным компьютером».

Рисунок 18. Диаграмма деятельности для прецедента «визуальное управление удаленным компьютером»

3.4 Статический вид системы

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

Диаграмма компонентов разрабатывается для следующих целей:

- визуализации общей структуры исходного кода программной системы;

- спецификации исполнимого варианта программной системы;

- обеспечения многократного использования отдельных фрагментов программного кода;

- представления концептуальной и физической схем баз данных.

На рисунке 19 изображена диаграмма компонентов, представляющая систему в виде отношения двух модулей - RATClient.exe и RATServer.exe посредством интерфейса, описанного на стороне сервера.

Каждый модуль включает в себя файлы с расширением *.pas, являющиеся файлами, содержащими исходный код приложения.

Рисунок 19. Диаграмма компонентов

4 . Тестирование

Для тестирования была использована утилита VMware Workstation, создающая на локальном компьютере виртуальную машину. На виртуальной машине установлена операционная система MS Windows XP SP3.

Тестирование начинается с установки и запуска серверной и клиентской частей на виртуальную машину и хост-платформу соответственно. При этом серверное приложение не имеет графического пользовательского интерфейса, и сразу после запуска, сворачивается в системный трей. На рисунке 20 изображено главное окно клиентского приложения.

Рисунок 20. Главное окно клиентского приложения

Далее необходимо добавить виртуальную машину в список администрируемых (рисунок 21).

Рисунок 21. Добавление виртуальной машины в список

Для дальнейших действий необходимо выделить этот элемент в списке нажатием левой кнопки мыши. Далее приложение находится в режиме ожидания дальнейших действий.

Для того чтобы узнать системную информацию о виртуальной машине нужно в меню Менеджер (рисунок 22) выбрать пункт Системная информация. Результат изображен на рисунке 23.

Рисунок 22. Меню Менеджер

Рисунок 23. Получение системной информации о виртуальной машине

В меню Менеджер выбираем пункт Диспетчер задач для просмотра запущенных на удаленном компьютере процессов (рисунок 24).

В правой части окна можно увидеть загруженность центрального процессора, физической и виртуальной памяти. В диспетчере задач так же есть возможность завершения процессов. Для этого нужно выбрать процесс и нажать кнопку «Завершить процесс».

Рисунок 24. Диспетчер задач

Для запуска программы Блокнот на удаленном компьютере выберем пункт меню Менеджер-Запуск программ. В открывшемся окне в строку «выполнить» напишем “notepad” и нажмем кнопку Выполнить (рисунок 25). Результат представлен на рисунке 26.

Рисунок 25. Дистанционный запуск программ

Рисунок 26. Результат дистанционного запуска программы

Для отправки короткого сообщения в диалоговом окне Windows перейдем в меню Менеджер-Отправка сообщения.

Откроется окно, предлагающее ввести текст сообщения и выбрать вид окна. Введем сообщение «Внимание!», выберем вид окна «предупреждение» и нажмем «Отправить» (рисунок 27). Результат представлен на рисунке 28.

Рисунок 27. Отправка сообщения на удаленный рабочий стол

Рисунок 28. Сообщение от администратора

На главном окне клиентского приложения нажмем на кнопку «Визуальное управление» для перехода в режим визуального управления удаленным компьютером.

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

Перейдем в режим визуального управления и откроем меню свойств папки «Мои документы» (рисунок 29).

Результат изображен на рисунке 30.

Рисунок 29. Режим визуального управления

Рисунок 30. Удаленный рабочий стол

5 . Обоснование экономической эффективности проекта

5.1 Выбор и обоснование методики расчета экономической эффективности

Целью данной дипломной работы является проектирование и разработка программного обеспечения для удаленного администрирования корпоративной сети. Утилита предназначена для облегчения процесса администрирования и обеспечивает достаточный для этого функционал.

Разработка и внедрение решений для автоматизации процесса администрирования корпоративной сети тесно связано с финансовыми и временными затратами. В этом свете целесообразным является анализ и расчет экономического эффекта и срока окупаемости проекта.

Экономическая эффективность, прежде всего, обусловлена уменьшением штата кадров и количеством специалистов, занятых администрированием ЛВС. Если до внедрения решения для администрирования этим на среднестатистическом предприятии занималось два специалиста, до после внедрения достаточно одного системного администратора, способного, используя утилиту, на расстоянии проводить мероприятия по обслуживанию компьютеров остальных пользователей сети.

5.2 Расчет показателей экономической эффективности проекта

Затраты на разработку и внедрение системы выражаются следующей формулой:

С=Стзпрртвнктс,

где - затраты на разработку технического задания;

- затраты на проектирование приложения;

- затраты на программную реализацию;

- затраты на тестирование приложения;

- затраты на внедрение приложения;

- затраты на приобретение комплекса технических средств.

5.2.1 Расчет затрат на разработку технического задания

Затраты на разработку технического задания составляют:

Стз = ЗпРАЗР*В+Отч,

где ЗпРАЗР - заработная плата разработчика в месяц;

В - время, затраченное на разработку технического задания;

Отч. - отчисления на социальное страхование (11% от заработной платы программиста).

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

ЗпРАЗР= 70000 (тенге);

В=7 (дней):

Отч=ЗпРАЗР*В*0.11=(70000*7)/22*0.11= 2450(тенге),

Стз=(70000*7)/22+2450=24722 (тенге).

5.2.2 Расчет затраты на проектирование ПО

Затраты на проектирование приложения определяются:

Спр = ЗпРАЗР*В+Отч,

где ЗпРАЗР - заработная плата разработчика в месяц;

В - время, затраченное на проектирование ПО;

Отч. - отчисления на социальное страхование (11%).

ЗпРАЗР=70000 (тенге);

В=8 (дней):

Отч=ЗпРАЗР*В*0.11=(70000*8)/22*0.11= 2799(тенге),

Спр=(70000*8)/22+2799=28253 (тенге).

5.2.3 Расчет затрат на программную реализацию

Затраты на программную реализацию определяются формулой:

СррЗ/П,

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

ФЗ/П - фонд заработной платы программиста.

Кр =k *dОТЛ*q,

где k - время, затраченное при работе на ЭВМ в день;

dОТЛ - количество дней работы на ЭВМ;

q - стоимость часа машинного времени.

ФЗ/П =dОТЛ*ЗПРАЗРАБ+ОтчЗ/П,

где ЗПРАЗРАБ - заработная плата разработчика в месяц;

ОтчЗ/П - отчисления на социальное страхование (11%).

При реализации главную роль играет среда разработки и используемые при этом технологии.

k = 5 (часов);

dОТЛ =22 (дней);

q=150 (тенге):

Кр = 5*22*150=16500 (тенге),

ЗПРАЗРАБ =70000 (тенге),

ОтчЗ/П = dОТЛ * ЗПРАЗРАБ *0.11 = (22*70000)/22*0.11=7700 (тенге),

ФЗ/П = dОТЛ* ЗПРАЗРАБ + ОтчЗ/П = (22*70000)/22+ 7700 =77700 (тенге),

СррЗ/П=16500 + 77700 = 94200 (тенге).

5.2.4 Расчет затрат на тестирование ПО

Затраты на тестирование приложения составляют:

СттЗ/П,

где Кт - стоимость машинного времени;

ФЗ/П - фонд заработной платы программиста.

Кт =k *dОТЛ*q,

где k - время, затраченное при работе на ЭВМ в день;

dОТЛ - количество дней работы на ЭВМ;

q - стоимость часа машинного времени.

ФЗ/П =dОТЛ*ЗПРАЗРАБ+ОтчЗ/П,

где ЗПРАЗРАБ - заработная плата программиста;

ОтчЗ/П - отчисления на социальное страхование (11%).

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

k = 4 (часов);

dОТЛ =18 (дней);

q=150 (тенге):

Кр = 4*18*150=10800 (тенге),

ЗПРАЗРАБ =70000 (тенге),

ОтчЗ/П = (18*70000)/22*0.11=6300 (тенге),

ФЗ/П = (18*70000)/22 + 6300 =63572(тенге),

СттЗ/П=63572 + 10800 = 74372 (тенге).

5.2.5 Расчет затрат, связанных с внедрением программы

Расчет затрат, связанных с внедрением приложения:

СВНВН+ ФЗ/П вн,

где КВН - стоимость машинного времени;

ФЗ/П вн - фонд заработной платы программиста.

КВН=K*d*q,

где K - время работы на ЭВМ в день;

d - количество дней работы на ЭВМ;

q - стоимость часа машинного времени.

ФЗ/П = ЗПРАЗР*d/D + ОтчЗ/П,

где ЗПРАЗР - заработная плата программиста;

ОтчЗ/П - отчисления на социальное страхование (11 %).

Для инсталляции (внедрения) подсистемы программист должен установить в систему определенные компиляторы, отладочные программы.

К=4 (часов);

d=1 (дня);

q=150 (тенге):

КВН=4*1*150=600(тенге),

ЗПРАЗРАБ =70000 (тенге),

ОтчЗ/П = (70000*1)/22*0.11=350 (тенге),

ФЗ/П = (70000*1)/22+350=3531 (тенге),

СВН=600+3531=4131 (тенге).

5.2.6 Расчет затрат на комплекс технических средств

Затрат на комплекс технических средств определяются формулой:

СКТСКОМППРИН,

где СКОМП - стоимость компьютера;

СПРИН - стоимость принтера.

Для реализации подсистемы остановимся на следующем составе технических средств:

- компьютеры (Pentium IV 3000 GHz 256 mb/40 Gb/128 GeForce)

- принтеры (Canon LJ LBP-2900).

СКОМП=98500 (тенге);

CПРИН=16300 (тенге);

СКТС=114800(тенге).

Теперь можно вычислить и затраты на разработку и внедрение системы:

С=Стзпрртвнктс = 24722 + 28253 +94200 +74372 +4131 + 114800 = 340478 (тенге)

5.2.7 Расчет затрат до внедрения программы

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

Затраты на решение задачи без использования программы рассчитываются по формуле:

З= ФЗ/П + ОтчЗ/П,

где ОтчЗ/П - отчисления на социальное страхование (11 %);

ФЗ/П - фонд заработной платы программиста.

Фонд заработной платы работников за год, учитывая расчет вручную, определяется по формуле:

ФЗ/П = Зпр*N*12,

где Зпр- заработная плата работников;

N - количество работников.

Зпр = 80000 (тенге);

N = 2 (человека):

ФЗ/П = Зпр*N*12 = 80000*2*12 = 1 920 000 (тенге),

ОтчЗ/П = 1920000*0.11 = 211200 (тенге),

З= ФЗ/П + ОтчЗ/П = 1920000 + 211200 = 2 131 200 (тенге).

5.2.8 Расчет затрат после внедрения программы

После внедрения программы численность лиц, решающих задачу, сократится до одного человека. Годовые затраты машинного времени на решение задачи определяются:

Крмаш =k *q,

где k - время, затраченное при работе на ЭВМ в месяц;

q - стоимость часа машинного времени.

k = 184 (часов);

q = 150 (тенге):

Кмаш =k *q = 184 * 150 = 27600 (тенге).

Годовой фонд заработной платы работника отдела, будет определяться следующим образом:

ФЗ/П = Зпр*N*12 + ОтчЗ/П;

Зпр = 100000 (тенге),

ОтчЗ/П = 100000*12*0,11=132000(тенге),

ФЗ/П = Зпр*N*12 = 100000*1*12 + 132000 = 1 332 000 (тенге),

Затр = Кмаш + ФЗ/П = 27600+1 332 000 = 1 359 000 (тенге).

5.3 Расчет экономии затрат от внедрения разработанной программы

Экономия затрат от внедрения вычисляется, тг/год:

Э = Затр - Затр,

где Затр - затраты до внедрения системы;

Затр - затраты после внедрения системы:

Э = Затр - Затр = 2131200- 1359000 = 772200.

Срок окупаемости системы:

Ток = С / Э,

где С- затраты на разработку и внедрение системы (тенге);

Э - экономия затрат от внедрения системы (тг/год):

Ток = С / Э = 340478 /772200 = 0,44 (года).

Годовой экономический эффект составил:

Эфгод = Э - Ен*С = 772200 - 0.32*340478 = 663247.

5.4 Вывод

Разработка программного обеспечения для удаленного администрирования позволяет сократить расходы на обслуживание пользователей сети, обеспечивает годовой экономический эффект в размере 663247 тенге. Следовательно, разработка и внедрение данного программного обеспечения является экономически целесообразным.

Заключение

Локальная вычислительная сеть современного предприятия является транспортной инфраструктурой для передачи разнородных потоков информации. ЛВС обеспечивает взаимодействие компонентов корпоративной информационной системы, бизнес-приложений, пользователей.

В ходе разработки была поставлена задача изучения области применения, анализа, проектирования и реализации утилиты для удаленного администрирования корпоративной сети.

Утилита призвана обеспечить:

- доступ к удаленному компьютеру;

- управление процессами и приложениями на пользовательских машинах;

- подключение к удаленному рабочему столу;

- получение необходимой информации об удаленном компьютере.

Приложение построено на основе «клиент-серверной» технологии и предполагает наличие хотя бы одного клиентского и одного серверного компьютера.

Среди остальных подобных программ Remote Administration Tools выделяет простота реализации и некоммерческая направленность проекта.

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

Список использованной литературы

1 Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. - СПб.: Питер, 1999. - 672 с.

2 Высокопроизводительные сети. Энциклопедия пользователя: Марк А. Спортак и др. - К.: ДиаСофт, 1998. - 432 с.

3 Кульгин М. Технологии корпоративных сетей. Энциклопедия - СПб.:Питер, 2000. -- 704 с.

4 Гук М. Аппаратные средства локальных сетей. Энциклопедия - СПб.:Питер, 2000. - 576 с.

5 Компьютерные сети+. Учебный курс (MSCE 70-058) - М.:Русская редакция, 2000. - 552 с.

6 Дж. Д. Рули. Сети Windows NT 4.0 - К.:BHV, 1997. -- 800 с.

7 Мельников Д.А. Информационные процессы в компьютерных сетях. Протоколы, стандарты, интерфейсы, модели… - М.: КУДИЦ-ОБРАЗ, 1999. - 256 с.

8 Уильям Р. Windows XP Professional. Справочник администратора. М.:Русская Редакция, 2003. - 561 с.

9 Семенов А.Б., Стрижаков С.К., Сунчелей И.Р. Телекоммуникационные технологии - М.:Компьютер-Пресс, 2001. - 608 с.

10 Донской М.А. Пользовательский интерфейс. - СПб.:БХВ-Петербург, 1999. - С. 25-42.

11 Хавронская А.М. Оценка технико-экономической эффективности программных средств // Методические указания по выполнению экономического раздела дипломных проектов и работ (для студентов специальности 050704). - Алматы: КазНТУ, 2000.

Приложение А

(обязательное)

Техническое задание по дипломному проектированию

А.1 Введение

А.1.1 Цель и назначение разработки

Основными целями создания приложения Remote Administration Tools являются:

- облегчение контроля и администрирования компьютеров, состоящих в корпоративной сети;

- предоставление бесплатного ПО, любым желающим администраторам сети.

А.1.2 Область применения

Так как программа, как уже было сказано, состоит из двух частей, логично предположить, что обе части должны работать одновременно и следовательно программа должна быть установлена как на управляющем компьютере, так и на управляемом. В противном случае связь между этими компьютерами не установить. В случае работы двух компьютеров используется принцип работы обычной клиент-серверной организации работы программ. Процесс подключения, таким образом, достаточно простой, поэтому на её работу мало влияют настройки файрвола, антивируса и другого программного обеспечения, способного заблокировать функционал приложения.

А.2 Общее описание

А.2.1 Пользовательские интерфейсы

В приложении представлен лёгкий, интуитивно-понятный пользовательский графический интерфейс.

Каждое окно приложения разбито на три части: строка меню, рабочая область и статусная строка. Строка меню горизонтальная и прижата к верхней части окна, статусная строка горизонтальная и прижата к нижней части окна,

Продолжение приложения А

рабочая область находится между строкой меню и статусной строкой и занимает всю оставшуюся площадь окна.

Так же в приложении предусмотрены вызовы контекстного меню, предусматривающее добавление и удаление элементов в список подключенных компьютеров.

А.2.2 Аппаратные интерфейсы

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

- HDD 100 MB;

- CPU Intel Pentium III 1.8 GHz;

- 256 MB RAM;

- интегрированная или VGA видеокарта;

- сетевая карта.

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

- HDD 50 MB;

- CPU Intel Pentium III 1.8 GHz;

- 128 MB RAM;

- сетевая карта.

А.2.2 Программные интерфейсы

Приложение написано и скомпилировано в интегрированной среде разработки (IDE) Delphi 7 с использованием стандартных визуальных и не визуальных компонент библиотеки VCL.

А.2.3 Коммуникационные интерфейсы

Администрируемая сеть должна быть построена с использованием следующих минимальных технических характеристик:

- активное сетевое оборудование коммутаторы с пропускной способностью до 10 Мбит;

- пропускная способность канала 128 Кбит;

- структурированная кабельная система на базе кабелей «витая пара».

Продолжение приложения А

А.2.4 Ограничения по памяти

На систему наложены следующие ограничения по памяти:

- ОЗУ 128 МБ;

- сетевая карта 100 Мбит;

- HDD 100 МБ.

А.2.5 Требования по адаптации

Система работает на всех операционных системах семейства Microsoft Windows 95/98/2000/ME/XP.

А.3 Требования к разработке

А.3.1 Функциональные требования

А.3.1.1 Требования к функциональным характеристикам

Разрабатываемая система выполняет следующие функции:

- подключение к пользовательской машине;

- получение полной информации об операционной системе и технических характеристиках пользовательской машины;

- вызов диспетчера задач, управляющего процессами и приложениями, запущенными на пользовательской машине;

- вызов экрана, отображающего рабочую область монитора пользовательской машины;

- отключение клавиатуры и «мыши» на пользовательской машине;

- отправка сообщений, имитирующих стандартные окна сообщений Windows.

А.3.1.2 Исходные данные

Исходными данными будут являться:

- IP-адрес подключаемого узла;

Продолжение приложения А

- условное наименование узла, удобное пользователю.

А.3.1.3 Результаты

Результатами будут являться:

- текстовое сообщение в строке состояния, подтверждающее возможность или невозможность подключения к выбранному узлу.

- получение управления над выбранным узлом.

А.3.2 Нефункциональные требования

А.3.2.1 Производительность

Система RAT должно обеспечивать возможность добавления неограниченного количества элементов в список управляемых компьютеров.

Система должна обеспечивать возможность одновременной работы неограниченного количества пользователей для подсистемы операционной деятельности при следующих характеристиках времени отклика системы:

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

- для перехвата визуального управления - не более 15 сек;

- для операций подключения к удаленному компьютеру - не более 6 сек.

- В случае контроля сети файрволом или антивирусом указанные временные характеристики могут несколько растянуться.

А.3.2.2 Надежность и доступность

Система должна сохранять работоспособность и обеспечивать восстановление своих функций при возникновении следующих внештатных ситуаций:

-при сбоях в системе электроснабжения аппаратной части, приводящих к перезагрузке ОС, восстановление программы должно происходить после перезапуска ОС и запуска исполняемого файла системы;

-при ошибках в работе аппаратных средств (кроме носителей данных и программ) восстановление функции системы возлагается на ОС;

Продолжение приложения А

- при ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС.

Для защиты аппаратуры от бросков напряжения и коммутационных помех должны применяться сетевые фильтры.

А.3.3 Интерфейсные требования

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

Интерфейс должен быть рассчитан на преимущественное использование манипулятора типа «мышь», то есть управление системой должно осуществляться с помощью набора экранных меню, кнопок, значков и т. п. элементов. Клавиатурный режим ввода должен используется главным образом при заполнении и/или редактировании текстовых и числовых полей экранных форм.

Все надписи экранных форм, а также сообщения, выдаваемые пользователю (кроме системных сообщений) должны быть на русском языке.

А.3.4 Ограничения

В ходе проектирования были наложены следующие ограничения:

- ограничения по инструментам и языкам. Строгое использование интегрированной среды разработки (IDE) Delphi 7 и библиотеки VCL;

- приложение предназначено для работы в ОС Microsoft Windows 95/98/2000/ME/XP;

- ограничения по проектированию - не ограничено.

Продолжение приложения А

А.3.5 Обратные требования

Спецификация обратных требований:

- приложение не контролирует сетевой траффик управляемых компьютеров;

- приложение не имеет интеграции со службой каталогов Microsoft Active Directory;

- приложение не поддерживает системы сетевой безопасности;

- в приложении не предусмотрена регистрация и взимание коммерческой выгоды.

Приложение Б

(обязательное)

Текст программы

Б.1 Текст клиентской части

unit Unit1;

// Главная форма

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,

IdTCPClient, ComCtrls, ExtCtrls, Buttons, Menus, IdTCPServer,

TabNotBk,jpeg,Spin, IdAntiFreezeBase, IdAntiFreeze,sysman,shutman,stopise, REG,

IdIPWatch,hesh64x,registry, ImgList;

type

TForm1 = class(TForm)

TCPClient: TIdTCPClient;

Label2: TLabel;

Panel2: TPanel;

Panel3: TPanel;

Bevel3: TBevel;

MainMenu1: TMainMenu;

AboutRDriver1: TMenuItem;

Bevel6: TBevel;

Bevel7: TBevel;

GroupBox3: TGroupBox;

fullscreen: TRadioButton;

activewindows: TRadioButton;

BitBtn32: TBitBtn;

Timer1: TTimer;

N4: TMenuItem;

Soft1: TMenuItem;

IdAntiFreeze1: TIdAntiFreeze;

FSC: TCheckBox; Label10: TLabel;

Label11: TLabel; N22: TMenuItem;

N23: TMenuItem;

N24: TMenuItem;

N26: TMenuItem;

N28: TMenuItem; N29: TMenuItem;

N35: TMenuItem;

N36: TMenuItem;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N39: TMenuItem;

N40: TMenuItem;

askBar1: TMenuItem;

askBar2: TMenuItem;

Timer2: TTimer;

N41: TMenuItem;

N42: TMenuItem;

N10: TMenuItem;

CheckBox3: TCheckBox;

CheckBox4: TCheckBox;

Label5: TLabel;

Bevel5: TBevel;

Bevel8: TBevel;

Bevel9: TBevel;

Bevel10: TBevel;

Bevel12: TBevel;

Bevel13: TBevel;

Bevel14: TBevel;

Bevel15: TBevel;

Bevel16: TBevel;

Bevel17: TBevel;

Bevel18: TBevel;

Bevel19: TBevel;

Bevel20: TBevel;

Bevel21: TBevel;

Bevel22: TBevel;

Bevel23: TBevel;

Bevel24: TBevel;

Bevel25: TBevel;

IdIPWatch1: TIdIPWatch;

OpenDialog1: TOpenDialog;

ListView1: TListView;

ImageList1: TImageList;

PopupMenu2: TPopupMenu;

N45: TMenuItem;

N46: TMenuItem;

N47: TMenuItem;

N48: TMenuItem;

N49: TMenuItem;

N50: TMenuItem;

ListBox1: TListBox;

Label1: TLabel;

Label3: TLabel;

N37: TMenuItem;

N38: TMenuItem;

N44: TMenuItem;

N51: TMenuItem;

N54: TMenuItem;

N56: TMenuItem;

N58: TMenuItem;

Memo1: TMemo;

procedure BitBtn1Click(Sender: TObject);

procedure Panel3MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure Panel3MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure Panel3MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure Panel2MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure Panel3Click(Sender: TObject);

procedure Panel2Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure BitBtn2Click(Sender: TObject);

// procedure BitBtn32Click(Sender: TObject);

procedure TCPClientConnected(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure CtrlAltDel1Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure Explorer1Click(Sender: TObject);

procedure N23Click(Sender: TObject);

procedure N22Click(Sender: TObject);

procedure N24Click(Sender: TObject);

procedure N26Click(Sender: TObject);

procedure N28Click(Sender: TObject);

procedure N29Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure askBar1Click(Sender: TObject);

procedure askBar2Click(Sender: TObject);

procedure Timer2Timer(Sender: TObject);

procedure N41Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure ListView1KeyUp(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure ListView1MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure N45Click(Sender: TObject);

procedure N47Click(Sender: TObject);

procedure N48Click(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure N49Click(Sender: TObject);

procedure N50Click(Sender: TObject);

procedure ListView1MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure N39Click(Sender: TObject);

procedure BitBtn32Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

procedure readhost;

function GetiniFileName:string;

procedure SaveIniFileName(fname:string);

procedure writehosts;

procedure IpComand(Comand:string);

procedure RefreshObjects;

procedure ReadAdressName(fname:string);

procedure SaveAdressName(fname:string);

end;

const aversion=' Version: 1.0';

inifilename = '\RD.ini';

defaultipport=8090;

var

Form1: TForm1;

sstream:TStringStream;

c:boolean;

i,sc:byte;

CName,CAdr,FAdd,SiCom:array[0..255] of string;

count,i3,SelectedCount:integer;

ifname:string = 'c:\rd.ini';

z,z1:text;

implementation

uses about1,unit4,icman,messman,runman,sysInfoMan;

{$IFDEF MSWINDOWS}{$R *.dfm}{$ELSE}{$R *.xfm}{$ENDIF}

procedure TForm1.IpComand(Comand:string);

var xx,i1,ii:integer;

// s:string;

begin

xx:=0;

ii:=0;

if SelectedCount > 0 then

for xx:=0 to SelectedCount-1 do

begin

// sleep(10);

i1:=xx;

//if (TCPClient.connected=true) and (TCPClient.Host = fadd[xx]) then

//tcpclient.port:=defaultipport;

try

TCPClient.Disconnect;

tcpclient.Host:=fadd[xx];

tcpclient.port:=defaultipport;

TCPClient.Connect;

if comand= '' then if sc >1 then

for ii:=0 to sc do

begin

tcpclient.writeln(sicom[ii]);

// sleep(10);

end

else

else

tcpclient.writeln(comand);

except

// continue;

Memo1.Lines.Add('Неудается установить связь с '+fadd[i1]);

end;

end;

fillchar(sicom,sizeof(sicom),0);sc:=0;

end;

{except

panel1.Caption:='Неудается установить связь с '+fadd[i1];

end;}

procedure TFORM1.RefreshObjects;

var ii:integer;

begin

ii:=0;

ListView1.Items.Clear;

ReadAdressName(ifname);

for ii:=0 to count-1 do

listview1.Items.Add.Caption:=cname[ii];

//caption:=inttostr(count);

i3:=count;

SaveAdressName(ifname);

end;

procedure TForm1.SaveAdressName(fname:string);

var xx,yy,c:integer;

begin

xx:=0;yy:=0;

assignfile(z1,fname);

rewrite(z1);

c:=ListView1.Items.Count-1;

for xx:=0 to c do

for yy:=0 to count do

if ListView1.Items.Item[xx].Caption = cname[yy] then

writeln(z1,'['+cname[yy]+']=<'+cadr[yy]+'>');

closefile(z1);

end;

procedure TForm1.ReadAdressName(fname:string);

var

s,ss:string;

i,i1,i2:integer;

begin

i:=0;

i1:=0;

i2:=0;

s:='';

ss:='';

count:=0;

assignfile(z,ifname);

// if FileExists(ifname) then

reset(z) ;

//else

// begin

// rewrite(z);

// closefile(z);

// assignfile(z,ifname);

//end;

while not eof(z) do

begin

readln(z,s);

for i:=1 to length(s) do

if copy(s,i,1) = '[' then

begin

i1:=i;

while copy(s,i1,1) <> ']' do

begin

inc(i1);

ss:=ss+copy(s,i1,1);

end;

delete(ss,i1-1,i1);

cname[i2]:=ss;

ss:='';

inc(i2);

inc(count);

end;

end;

i:=0;

i1:=0;

i2:=0;

s:='';

ss:='';

reset(z);

while not eof(z) do

begin

readln(z,s);

for i:=1 to length(s) do

if copy(s,i,1) = '<' then

begin

i1:=i;

while copy(s,i1,1) <> '>' do

begin

ss:=ss+copy(s,i1,1);

inc(i1);

end;

delete(ss,1,1);

cadr[i2]:=ss;

ss:='';

inc(i2);

end;

end;

closefile(z);

end;

procedure tform1.SaveIniFileName(fname:string);

var

Reg: TRegistry;

begin

reg := TRegistry.Create;

reg.RootKey := HKEY_LOCAL_MACHINE;

reg.LazyWrite := false;

if not reg.KeyExists('Software\HummerSoft\Remote Driver') then

begin

reg.CreateKey('Software\HummerSoft\Remote Driver');

reg.CloseKey;

reg.Free;

reg := TRegistry.Create;

reg.RootKey := HKEY_LOCAL_MACHINE;

reg.LazyWrite := false;

end;

reg.OpenKey('Software\HummerSoft\Remote Driver',

false);

reg.WriteString('IniFile', fname);

reg.CloseKey;

reg.free;

end;

function tform1.GetiniFileName:string;

var

TheReg: TRegistry;

KeyName: String;

ValueStr: String;

begin

TheReg := TRegistry.Create;

try

TheReg.RootKey := HKEY_LOCAL_MACHINE;

KeyName := 'Software\HummerSoft\Remote Driver';

if TheReg.OpenKey(KeyName, False) then

begin

ValueStr := TheReg.ReadString('IniFile');

TheReg.CloseKey;

end;

finally

TheReg.Free;

result:=ValueStr;

end;

end;

Function IsSoftIce95Loaded: boolean;

Var hFile: Thandle;

Begin

result := false;

hFile := CreateFileA('\\.\SICE', GENERIC_READ or GENERIC_WRITE,

FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING,

FILE_ATTRIBUTE_NORMAL, 0);

if( hFile <> INVALID_HANDLE_VALUE ) then begin

CloseHandle(hFile);

result := TRUE;

end;

End;

Function IsSoftIceNTLoaded: boolean;

Var hFile: Thandle;

Begin

result := false;

hFile := CreateFileA('\\.\NTICE', GENERIC_READ or GENERIC_WRITE,

FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING,

FILE_ATTRIBUTE_NORMAL, 0);

if( hFile <> INVALID_HANDLE_VALUE ) then begin

CloseHandle(hFile);

result := TRUE;

end;

End;

procedure tform1.readhost;

var Buffer : array [0..255] of char;

begin

GetWindowsDirectory(buffer,sizeof(buffer));

if fileexists(pchar(buffer+inifilename)) then

Begin

//CB.Items.LoadFromFile(buffer+inifilename);

end;

end;

procedure tform1.writehosts;

var Buffer : array [0..255] of char;

Begin

GetWindowsDirectory(buffer,sizeof(buffer));

//CB.Items.savetofile(buffer+inifilename);

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

if tCPClient.Connected then

begin

tCPClient.Disconnect;

Memo1.Lines.Add('Disconnect');

end;

end;

procedure TForm1.Panel3MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

panel3.Color:=clwhite;


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.