powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Найти и открыть файл
25 сообщений из 154, страница 1 из 7
Найти и открыть файл
    #36942555
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вопрос думаю для многих важный и хоть кто-то обязан знать: мне нужно найти(провести поиск во всех папках и дисках) файл Skype.exe и затем запустить его. принцип:при запуске прога в невидимом режиме находит файлы с таким именем и сама запускает первый попавшийся файл. заранее спс
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942617
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: BelowZero
> вопрос думаю для многих важный

совсем не правильно думаешь! т.е. абсолютно не правильно!

> и хоть кто-то обязан знать: мне нужно найти(провести поиск во

Это знают многие, но не понятно зачем искать скайп? Лучше коллекцию видео каталогизировать. Или фото. А скайп не
интересно.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942771
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZeroвопрос думаю для многих важный и хоть кто-то обязан знать: мне нужно найти(провести поиск во всех папках и дисках) файл Skype.exe и затем запустить его. принцип:при запуске прога в невидимом режиме находит файлы с таким именем и сама запускает первый попавшийся файл. заранее спс

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

Потом "шелиш"ь коллекцию.Вуаля.
Пожалуйста.
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942792
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero, и главное это надо строго на ВБ или ВБА????
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942801
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может сразу аналог Скайпа написать на ВБА, да ещё получше, чтобы была фунция с Ворда звонить???
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942926
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это надо в VB6 и чисто код чтоб открыть скайп в какой бы папке он не был. а что и зачем мне открывать пожалуйста оставьте решать мне. ведь вещь элементарная но я новичок а вы по-любому это знаете. ещё раз заранее спс
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942936
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

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

Но сначала поищите тут по фразе "перебор папок" - сто раз уже вопрос обсуждался.
Запуск приложения - Shell
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942954
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero, а если этого файла вообще нет на компе, тогда что??
Выполнить, будет Shell, далее адрес и файл
Shell "C:\Program Files\skype.exe
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942964
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюBelowZero, а если этого файла вообще нет на компе, тогда что??
Выполнить, будет Shell, далее адрес и файл
Shell "C:\Program Files\skype.exe
почитай плиз что я писал... я знаю как открыть файл. но у разных людей скайп(Skype.exe) находится в разных местах
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942971
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

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

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

А пока ты просишь написать код за тебя... тогда все просто - 3 тысячи рублей - торг уместен. Другие могут подешевле сделать, но сильно не выгадаешь.

Просить мало, надо включить мозг.
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942973
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShamanusBelowZeroвопрос думаю для многих важный и хоть кто-то обязан знать: мне нужно найти(провести поиск во всех папках и дисках) файл Skype.exe и затем запустить его. принцип:при запуске прога в невидимом режиме находит файлы с таким именем и сама запускает первый попавшийся файл. заранее спс

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

Потом "шелиш"ь коллекцию.Вуаля.
Пожалуйста.
То что нужно! можешь написать код? он вроде не длинный. плз
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942974
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shamanus надо включить мозг.или кошелек
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36942990
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот код длинный но работающий
Option Explicit

Private Const INVALID_HANDLE_VALUE = -1
Private Const FILE_ATTRIBUTE_DIRECTORY = &H10
Private Const MAX_PATH = 260

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

Private Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type

Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long

Private StopSearch As Boolean

Private Sub SearchForFiles(fName As String, Path As String)
If StopSearch = True Then Exit Sub
Dim Atr As Integer
Dim hFnd As Long
Dim WFD As WIN32_FIND_DATA
hFnd = FindFirstFile(Path & fName, WFD)
If hFnd = INVALID_HANDLE_VALUE Then Exit Sub
Do
Atr = (WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY)
If TrimNull(WFD.cFileName) <> "." And TrimNull(WFD.cFileName) <> ".." Then
If Atr > 0 Then
lstFiles.AddItem "[" & Path & TrimNull(WFD.cFileName) & "]"
Else
lstFiles.AddItem Path & TrimNull(WFD.cFileName)
End If
End If
Loop While FindNextFile(hFnd, WFD)
FindClose hFnd
End Sub

Private Sub SearchForFolders(fName As String, Path As String, File As String)
If StopSearch = True Then Exit Sub
Dim Atr As Integer
Dim hFnd As Long
Dim WFD As WIN32_FIND_DATA
hFnd = FindFirstFile(Path & fName, WFD)
If hFnd = INVALID_HANDLE_VALUE Then Exit Sub
SearchForFiles File, Path
Do
Atr = (WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY)
If TrimNull(WFD.cFileName) <> "." And TrimNull(WFD.cFileName) <> ".." Then
If Atr > 0 Then
DoEvents
SearchForFolders fName, Path & TrimNull(WFD.cFileName) & "\", File
End If
End If
Loop While FindNextFile(hFnd, WFD)
FindClose hFnd
End Sub

Private Sub cmdFind_Click()
StopSearch = False
Dim tmp As String
lstFiles.Clear
If Len(txtWhat) = 0 Then Exit Sub
If Len(txtWhere) < 3 Then Exit Sub
If Mid$(txtWhere, Len(txtWhere), 1) <> "\" Then txtWhere = txtWhere & "\"
If Len(txtWhere & txtWhat & vbNullString) > MAX_PATH Then MsgBox "Äëèíà çàïðîñà ïîèñêà íå äîëæíà ïðåâûøàòü 260 ñèìâîëîâ.", vbCritical, Caption: Exit Sub
Screen.MousePointer = 13
cmdFind.Enabled = False
cmdStop.Enabled = True
stsBar.Panels("status").Text = "Ïîèñê ïðîäîëæàåòñÿ..."
SearchForFolders "*", txtWhere, txtWhat & vbNullString
stsBar.Panels("status").Text = "Ïîèñê çàêîí÷åí, íàéäåíî: " & lstFiles.ListCount & " ôàéëîâ è ïàïîê."
Screen.MousePointer = 0
cmdFind.Enabled = True
cmdStop.Enabled = False
End Sub

Private Function TrimNull(Start As String) As String
Dim Pos As Integer
Pos = InStr(Start, Chr$(0))
If Pos Then
TrimNull = Left$(Start, Pos - 1)
Exit Function
End If
TrimNull = Start
End Function

Private Sub cmdStop_Click()
StopSearch = True
End Sub

Private Sub Form_Load()
txtWhere = App.Path & "\"
End Sub

Private Sub Form_Unload(Cancel As Integer)
If cmdFind.Enabled = False Then Cancel = True
End Sub
найденные(ый) файлы скайп аккуратно записываются в листбокс... а как тогда его открыть?О_о
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943020
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZeroнайденные(ый) файлы скайп аккуратно записываются в листбокс... а как тогда его открыть?О_о пользуйте SRC и Spoiler

Я верно понял вопрос, нужно получить некоторый элемент листбокса?
в зависимости от среды
Код: plaintext
x=lstFiles.Text
этот код вернет выделенный элемент листбокса
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943030
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shamanus,

я нуб в VB6. я знаю что и как мне нужно делать но код для этого у меня никак не выходит( напиши готовый код как я понял в нём ведь только 2 строчки. спс
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943037
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

вот код длинный но работающий!!!!!, гланое Option Explicit есть!!!!
Что то вроде этого, не подойдёт
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Dim Папка_где_ищем_файлы As String
Dim Искомая_часть_имени_файла As String
Dim Файл_в_папке_g As String

Папка_где_ищем_файлы = "D:\1111"
Искомая_часть_имени_файла = "144"
Set Объект = CreateObject("Scripting.FileSystemObject")
Set Путь_к_объектам = Объект.GetFolder(Папка_где_ищем_файлы)
Set Файлы_в_папке = Путь_к_объектам.Files
For Each File In Файлы_в_папке
Имя_файла_g_в_папке = File.Name
Next
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943042
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

так вместо того, чтобы добавлять их в листбокс, надо shell-ом запустить первый найденный файл и все
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943044
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюЧто то вроде этого, не подойдёт
верно утверждаешь, не подойдет - тут нет рекурсивного просмотра папок
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943051
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZeroнапиши готовый код
Shamanusпросишь написать код за тебя... тогда все просто - 3 тысячи рублей - торг уместен номер кошелька вебмани или банковский перевод?
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943065
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так вместо того, чтобы добавлять их в листбокс, надо shell-ом запустить первый найденный файл и все
Как?)
я знаю как провести рекурсивный поиск знаю как открывают файл... а как совместить?) ((знаю нублю но все когда-то с чего-то начинали))
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943067
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

а мне кажется в твоем коде твоего нет. Нашел пример в интернете и себе его приписываешь.
Если я неправ объясни мне зачем нужна функция TrimNull?
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943073
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShamanusBelowZero,

а мне кажется в твоем коде твоего нет. Нашел пример в интернете и себе его приписываешь.
Если я неправ объясни мне зачем нужна функция TrimNull?
да я просто нашёл в инете готовый код в котором много лишнего и ненужного но он хотя б работает... если б я сам мог написать я б не спрашивал советов...
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943080
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shamanus ты столько исписал предложениями купить код и проверками моего знания VB6 сколько хватило бы на 3 нужных мне кода... не проще просто помочь новичку?)
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943084
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Найти и открыть файл
    #36943086
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZeroда я просто нашёл в инете готовый код в котором много лишнего и ненужного но он хотя б работает... если б я сам мог написать я б не спрашивал советов...

честность лучшее оружие

Место где в коде элементы кладутся в листбокс
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
Option Explicit

Private Const INVALID_HANDLE_VALUE = - 1 
Private Const FILE_ATTRIBUTE_DIRECTORY = &H10
Private Const MAX_PATH =  260 

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

Private Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String *  14 
End Type

Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long

Private StopSearch As Boolean

Private Sub SearchForFiles(fName As String, Path As String)
If StopSearch = True Then Exit Sub
Dim Atr As Integer
Dim hFnd As Long
Dim WFD As WIN32_FIND_DATA
hFnd = FindFirstFile(Path & fName, WFD)
If hFnd = INVALID_HANDLE_VALUE Then Exit Sub
Do
Atr = (WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY)
If TrimNull(WFD.cFileName) <> "." And TrimNull(WFD.cFileName) <> ".." Then
If Atr >  0  Then
lstFiles.AddItem "[" & Path & TrimNull(WFD.cFileName) & "]"
Else
lstFiles.AddItem Path & TrimNull(WFD.cFileName)
End If
End If
Loop While FindNextFile(hFnd, WFD)
FindClose hFnd
End Sub

Private Sub SearchForFolders(fName As String, Path As String, File As String)
If StopSearch = True Then Exit Sub
Dim Atr As Integer
Dim hFnd As Long
Dim WFD As WIN32_FIND_DATA
hFnd = FindFirstFile(Path & fName, WFD)
If hFnd = INVALID_HANDLE_VALUE Then Exit Sub
SearchForFiles File, Path
Do
Atr = (WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY)
If TrimNull(WFD.cFileName) <> "." And TrimNull(WFD.cFileName) <> ".." Then
If Atr >  0  Then
DoEvents
SearchForFolders fName, Path & TrimNull(WFD.cFileName) & "\", File
End If
End If
Loop While FindNextFile(hFnd, WFD)
FindClose hFnd
End Sub

Private Sub cmdFind_Click()
StopSearch = False
Dim tmp As String
lstFiles.Clear
If Len(txtWhat) =  0  Then Exit Sub
If Len(txtWhere) <  3  Then Exit Sub
If Mid$(txtWhere, Len(txtWhere),  1 ) <> "\" Then txtWhere = txtWhere & "\"
If Len(txtWhere & txtWhat & vbNullString) > MAX_PATH Then MsgBox "Äëèíà çàïðîñà ïîèñêà íå äîëæíà ïðåâûøàòü 260 ñèìâîëîâ.", vbCritical, Caption: Exit Sub
Screen.MousePointer =  13 
cmdFind.Enabled = False
cmdStop.Enabled = True
stsBar.Panels("status").Text = "Ïîèñê ïðîäîëæàåòñÿ..."
SearchForFolders "*", txtWhere, txtWhat & vbNullString
stsBar.Panels("status").Text = "Ïîèñê çàêîí÷åí, íàéäåíî: " & lstFiles.ListCount & " ôàéëîâ è ïàïîê."
Screen.MousePointer =  0 
cmdFind.Enabled = True
cmdStop.Enabled = False
End Sub

Private Function TrimNull(Start As String) As String
Dim Pos As Integer
Pos = InStr(Start, Chr$( 0 ))
If Pos Then
TrimNull = Left$(Start, Pos -  1 )
Exit Function
End If
TrimNull = Start
End Function

Private Sub cmdStop_Click()
StopSearch = True
End Sub

Private Sub Form_Load()
txtWhere = App.Path & "\"
End Sub

Private Sub Form_Unload(Cancel As Integer)
If cmdFind.Enabled = False Then Cancel = True
End Sub

выделенная часть кода это добавление записи в лист бокс. Удали эту строку и запускай шелом файл (имя файла и путь к нему выглядит так
Код: plaintext
Path & TrimNull(WFD.cFileName 
)
...
Рейтинг: 0 / 0
25 сообщений из 154, страница 1 из 7
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Найти и открыть файл
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]