Тема: Как найти файл?

Есть ли возможность найти любой файл, неизвестно где находящийся, для получения пути его нахождения.

Re: Как найти файл?

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

Re: Как найти файл?

Отличное решение. Осталось только написать ее родимую.Есть ли на этот счет соображения?
Функция VB- "Dir" ограничивает возможности решения проблемы.

Re: Как найти файл?

Рад, что Вам понравилось решение..
>>Функция VB- "Dir" ограничивает возможности решения проблемы.>>>
да нет никакой проблемы - почитайте хелп по VBScript в MSDN -там куча сэмплов, Вам нужен объект FSO - File System Object,  Folder,Folders, File , сначала надо определить доступные логические устройства и все их перебирать, просматривая вложенные папки .
А насчет соображений.... только одно - какие Ваши предложения smile)

Re: Как найти файл?

посмотрите
https://www.caduser.ru/forum/topic11015.html
там почти все готово

Re: Как найти файл?

Все о скриптах - очень интересное место, надо только Notepad, чтобы комп боком поставить!!!
http://msdn.microsoft.com/scripting

> Paha
из Вашего первого сообщения не следует какой у Вас уровень знаний по VB. Во втором Вы поведали, что VB Вам знаком. Значит, я правильно сделал, что написал один из вариантов, как это сделать, не вдаваясь в подробности. Ведь Вы на форуме Программирование :: VBA, значит  VBA знаете.  А конкретная реализация.. если есть сложности - все можно обсудить

Re: Как найти файл?

Спасибо за наводку, пока не пробовал применительно к моей проблеме, но уверен что должно получиться. В VB совсем не давно поэтому знания пока поверхностные. Надеюсь со временем углубится.
>>Все о скриптах - очень интересное место, надо только Notepad, чтобы комп боком поставить!!!>>
извините не понял шутки. Проясните , если не трудно.
Спасибо.

Re: Как найти файл?

а это не шутка. скрипты- это исполняемые текстовые файлы. Ссылка на сайт с полным описанием этой технологии. Скриптами можно не только имена файлов смотреть, но и реестр Винды модифицировать, и права пользователей менять и прочее.
в проге converterACAD - www.mechmagic.com - все что касается файлов - на скриптах написано. На сайте www.vbnet.ru есть моя программа в примерах, удаленное изменение пароля http://www.vbnet.ru/sample/sampledownload.asp?id=250
тоже как скриптами что можно сделать...

Re: Как найти файл?

Ну вот, дошли руки до поиска файла. Ищет какой угодно файл везде, где возможно.
Спасибо за помощь! Был очень рад общению.

Re: Как найти файл?

Рад, что Вам понравилось и получилось. Вот примерчик скрипта, понравится - скопируйте в блокнот и назовите EXCEL.VBS
Проводником запустите - скрипты, вещь могучая. Очень просто получается доступ к реестру Винды, намного проще, чем через АПИ. Если будут вопросы - мыльте - www.mechmagic.com

' Windows Script Host Sample Script
'
' ------------------------------------------------------------------------
'               Copyright (C) 1996 Microsoft Corporation
'
' You have a royalty-free right to use, modify, reproduce and distribute
' the Sample Application Files (and/or any modified version) in any way
' you find useful, provided that you agree that Microsoft has no warranty,
' obligations or liability for any Sample Application Files.
' ------------------------------------------------------------------------
' This sample will display Windows Scripting Host properties in Excel.
L_Welcome_MsgBox_Message_Text    = "This script will display Windows Scripting Host properties in Excel."
L_Welcome_MsgBox_Title_Text      = "Windows Scripting Host Sample"
Call Welcome()
' ********************************************************************************
' *
' * Excel Sample
' *
Dim objXL
Set objXL = WScript.CreateObject("Excel.Application")
objXL.Visible = TRUE
objXL.WorkBooks.Add
objXL.Columns(1).ColumnWidth = 20
objXL.Columns(2).ColumnWidth = 30
objXL.Columns(3).ColumnWidth = 40
objXL.Cells(1, 1).Value = "Property Name"
objXL.Cells(1, 2).Value = "Value"
objXL.Cells(1, 3).Value = "Description"
objXL.Range("A1:C1").Select
objXL.Selection.Font.Bold = True
objXL.Selection.Interior.ColorIndex = 1
objXL.Selection.Interior.Pattern = 1 'xlSolid
objXL.Selection.Font.ColorIndex = 2
objXL.Columns("B:B").Select
objXL.Selection.HorizontalAlignment = &hFFFFEFDD ' xlLeft
Dim intIndex
intIndex = 2
Sub Show(strName, strValue, strDesc)
    objXL.Cells(intIndex, 1).Value = strName
    objXL.Cells(intIndex, 2).Value = strValue
    objXL.Cells(intIndex, 3).Value = strDesc
    intIndex = intIndex + 1
    objXL.Cells(intIndex, 1).Select
End Sub
'
' Show WScript properties
'
Call Show("Name",           WScript.Name,           "Application Friendly Name")
Call Show("Version",        WScript.Version,        "Application Version")
Call Show("FullName",       WScript.FullName,       "Application Context: Fully Qualified Name")
Call Show("Path",           WScript.Path,           "Application Context: Path Only")
Call Show("Interactive",    WScript.Interactive,    "State of Interactive Mode")
'
' Show command line arguments.
'
Dim colArgs
Set colArgs = WScript.Arguments
Call Show("Arguments.Count", colArgs.Count, "Number of command line arguments")
For i = 0 to colArgs.Count - 1
    objXL.Cells(intIndex, 1).Value = "Arguments(" & i & ")"
    objXL.Cells(intIndex, 2).Value = colArgs(i)
    intIndex = intIndex + 1
    objXL.Cells(intIndex, 1).Select
Next
' ********************************************************************************
' *
' * Welcome
' *
Sub Welcome()
    Dim intDoIt
    intDoIt =  MsgBox(L_Welcome_MsgBox_Message_Text, _
                      vbOKCancel + vbInformation,    _
                      L_Welcome_MsgBox_Title_Text )
    If intDoIt = vbCancel Then
        WScript.Quit
    End If
End Sub

Re: Как найти файл?

У мя просто нет такого типа данных как FileSystemObject, есть возможность обойти эту фишку?
Работает функция Application.FindFile, но вот путь открываемого файла подцепить не могу (не знаю как)
RIM

Re: Как найти файл?

Granny.R пишет:

У мя просто нет такого типа данных как FileSystemObject

А вы что под линукс пишите :).
Если FSO не хотите или не можете использовать? то почитайте о API функциях начинающихся на Find*.

Re: Как найти файл?

Посмотри еще здесь:
http://kbyte.ru/Forum/Default.aspx?forum=8
и вот здесь:
http://kbyte.ru/Refbooks/