Функция принимает на вход переменную filеList.FileName, которая содержит имя файла, путь к нему, с помощью которых определяется ПО, которым следует открыть файл
Значения вышеупомянутых полей определяются ОС, т.к. зависят от установленных драйверов.
Ограничения на входные данные отсутствует, т.к. они полностью определяются ОС.
Результатом выполнения данной функции является корректное открытие файла, выбранном из списка, находящимся в ListBox
Работа функции зависит от ОС. При корректной работе ОС, функция работает надёжно.
Функция не требует наличия интерфейсной части.
Критерием эффективности функции является наиболее полная информация о системных сообщениях.
Архитектура функции представлена ниже (см. Рис. № 3).
2.5 Технико-экономические показатели
Разрабатываемое приложение имеет аналог в ОС Windows XP. (Проводник, Поиск)
Приложение предоставляет возможность пользователю быстро и оперативно узнать о файлах, ему доступных, а также открыть их, если соответствующее ПО установлено на ПК.
Одним из достоинств программного средства, то что оно является бесплатным.
3. СТАДИИ И ЭТАПЫ РАЗРАБОТКИ
Разработка программного средства должна выполняться по следующим этапам:
1) Разработка, согласование и утверждение технического задания.
Результатом выполнения данного этапа должна быть подготовленное техническое задание, на основании которого будет вестись дальнейшая разработка. Техническое задание содержится в 1, 2, 3 и 4 главах данной пояснительной записки.
2) Создание алгоритма программного средства.
Результатом выполнения данного этапа являются блок-схемы алгоритма проектируемого приложения.
3) Написание программного кода.
Результатом выполнения данного этапа должны быть и исходные тексты приложения, и рабочий программный модуль, соответствующий предъявленным требования. Программный код и модуль прилагаются к курсовой работе на магнитном носителе.
4) Разработка руководства пользователя.
Результатом выполнения данного этапа должно стать подготовленное руководство пользователя (глава 5 данной пояснительной записки), описывающее эксплуатацию разработанного приложения.
5) Защита курсовой работы.
На данном этапе проверяется соответствие разработанного приложения техническому заданию, на основе которого оно было разработано. По окончанию данного этапа выставляется оценка за защиту курсовой работы.
4 ПРИЕМ, ПЕРЕДАЧА, А ТАКЖЕ ПОРЯДОК КОНТРОЛЯ.
Проверка документации программы осуществляется преподавателем, который должен оценить соответствие созданного программного продукта всем пунктам технической документации, включая техническое задание и руководство пользователя.
Испытания и тестирование программы должны проводиться в процессе создания программы самим разработчиком, а также после завершения всех этапов проектирования в момент сдачи ПС преподавателем с использованием контрольных тестов (контрольные тесты приведены ниже), позволяющих добиться проверки работоспособности функций программного средства.
Приём программы должен осуществляться преподавателем в присутствии разработчика. Программа считается годной, если она удовлетворяет предъявляемым требованиями. Прием программы подтверждается оценкой за курсовую работу.
5.1 Руководство по инсталляции программного средства
Скопируйте папку 1.0 на свой компьютер, в любое место.
Для запуска программы необходимо запустить файл – Winseek.exe (см. рис. 4).
(рис. 4)
5.2 Инструкция по применению программного средства
1. После запуска программы автоматически откроется форма программы (см. рис. 5);
(рис.5)
2. Для просмотра доступных файлов, необходимо выбрать интересующую пользователя папку. Это производится путём двойного нажатия на отображения папок, находящиеся в правом окне (см. рис. 5), файлы, находящиеся в папке отобразятся в левом окне;
(рис 6)
3. Для открытия файла необходимо два раза щелкнуть по нему
(рис 7)
4. Для поиска файлов необходимо ввести имя и расширение файла в строку Search Criteria и нажать кнопку Search
(рис 8)
5. После этого отобразится список найденных файлов
(рис 9)
6 КОНТРОЛЬНЫЙ ПРИМЕР
Поиск и открытие файла на ПК разработчика
(рис 10)
(рис 11)
(рис 12)
(рис 13)
7 ПРИЛОЖЕНИЕ
Dim SearchFlag As Integer
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Private Sub cmdExit_Click()
If cmdExit.Caption = "E&xit" Then
End
Else
SearchFlag = False
End If
End Sub
Private Sub cmdSearch_Click()
Dim FirstPath As String, DirCount As Integer, NumFiles As Integer
Dim result As Integer
If cmdSearch.Caption = "&Reset" Then
ResetSearch
txtSearchSpec.SetFocus
Exit Sub
End If
If dirList.Path <> dirList.List(dirList.ListIndex) Then
dirList.Path = dirList.List(dirList.ListIndex)
Exit Sub
End If
Picture2.Move 0, 0
Picture1.Visible = False
Picture2.Visible = True
cmdExit.Caption = "Cancel"
filList.Pattern = txtSearchSpec.Text
FirstPath = dirList.Path
DirCount = dirList.ListCount
NumFiles = 0
result = DirDiver(FirstPath, DirCount, "")
filList.Path = dirList.Path
cmdSearch.Caption = "&Reset"
cmdSearch.SetFocus
cmdExit.Caption = "E&xit"
End Sub
Private Function DirDiver(NewPath As String, DirCount As Integer, BackUp As String) As Integer
Static FirstErr As Integer
Dim DirsToPeek As Integer, AbandonSearch As Integer, ind As Integer
Dim OldPath As String, ThePath As String, entry As String
Dim retval As Integer
SearchFlag = True
DirDiver = False
retval = DoEvents()
If SearchFlag = False Then
DirDiver = True
Exit Function
End If
On Local Error GoTo DirDriverHandler
DirsToPeek = dirList.ListCount
Do While DirsToPeek > 0 And SearchFlag = True
OldPath = dirList.Path
dirList.Path = NewPath
If dirList.ListCount > 0 Then
dirList.Path = dirList.List(DirsToPeek - 1)
AbandonSearch = DirDiver((dirList.Path), DirCount%, OldPath)
End If
DirsToPeek = DirsToPeek - 1
If AbandonSearch = True Then Exit Function
Loop
If filList.ListCount Then
If Len(dirList.Path) <= 3 Then
ThePath = dirList.Path
Else
ThePath = dirList.Path + "\"
End If
For ind = 0 To filList.ListCount - 1
entry = ThePath + filList.List(ind)
lstFoundFiles.AddItem entry
lblCount.Caption = Str(Val(lblCount.Caption) + 1)
Next ind
End If
If BackUp <> "" Then
dirList.Path = BackUp
End If
Exit Function
DirDriverHandler:
If Err = 7 Then
DirDiver = True
MsgBox "You've filled the list box. Abandoning search..."
Exit Function
Else
MsgBox Error
End
End If
End Function
Private Sub DirList_Change()
filList.Path = dirList.Path
End Sub
Private Sub DirList_LostFocus()
dirList.Path = dirList.List(dirList.ListIndex)
End Sub
Private Sub DrvList_Change()
On Error GoTo DriveHandler
dirList.Path = drvList.Drive
Exit Sub
DriveHandler:
drvList.Drive = dirList.Path
Exit Sub
End Sub
Private Sub filList_DblClick()
ShellExecute 0, vbNullString, dirList.Path + "\" + filList.FileName, _
vbNullString, vbNullString, vbNormalFocus
End Sub
Private Sub Form_Load()
Picture2.Move 0, 0
Picture2.Width = WinSeek.ScaleWidth
Picture2.BackColor = WinSeek.BackColor
lblCount.BackColor = WinSeek.BackColor
lblCriteria.BackColor = WinSeek.BackColor
lblfound.BackColor = WinSeek.BackColor
Picture1.Move 0, 0
Picture1.Width = WinSeek.ScaleWidth
Picture1.BackColor = WinSeek.BackColor
End Sub
Private Sub Form_Unload(Cancel As Integer)
End
End Sub
Private Sub ResetSearch()
lstFoundFiles.Clear
lblCount.Caption = 0
SearchFlag = False
Picture2.Visible = False
cmdSearch.Caption = "&Search"
cmdExit.Caption = "E&xit"
Picture1.Visible = True
dirList.Path = CurDir: drvList.Drive = dirList.Path
End Sub
Private Sub lstFoundFiles_DblClick()
ShellExecute 0, vbNullString, lstFoundFiles.Text, _
vbNullString, vbNullString, vbNormalFocus
End Sub
Private Sub txtSearchSpec_Change()
filList.Pattern = txtSearchSpec.Text
End Sub
Private Sub txtSearchSpec_GotFocus()
txtSearchSpec.SelStart = 0
txtSearchSpec.SelLength = Len(txtSearchSpec.Text)
End Subc