Метод InvisibleApp.EnumDirectories (Visio)

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

Синтаксис

expression. EnumDirectories (PathsString, NameArray())

Выражение Переменная, представляющая объект InvisibleApp .

Параметры

Имя Обязательный или необязательный Тип данных Описание
PathsString Обязательный String Строка полных или частичных путей, разделенных точкой с запятой.
NameArray() Обязательный String Параметр Out. Массив, получающий имена перечисленных папок.

Возвращаемое значение

String()

Замечания

Некоторые свойства Visio, такие как AddonPaths и TemplatePaths , принимают и получают строку, интерпретируемую как список имен путей (папок), разделенных точкой с запятой. Когда приложение ищет элементы в именованных путях, оно выполняет поиск в папках и всех их вложенных папках.

Цель метода EnumDirectories — принять строку, например ту, которая может создать свойство AddonPaths и возвратить список папок, перечисляемых приложением при обработке такой строки.

Если метод EnumDirectories завершается успешно, nameArray() возвращает одномерный массив из n строк, индексируемых от 0 до n - 1. Каждая строка — это полное имя существующей папки. Список называет те папки, которые указаны в списке путей, которые существуют, и все их вложенные папки.

Параметр NameArray() — это параметр out, выделенный методом EnumDirectories , и владение передается вызывающей стороне. В конечном итоге вызывающий объект должен выполнить процедуру SafeArrayDe в возвращаемом массиве. (Microsoft Visual Basic и Visual Basic для приложений автоматически освобождают строки, на которые ссылаются записи массива.)

Пример

В следующем примере показано, как использовать метод EnumDirectories для печати в окне Интерпретация списка всех папок, которые Visio выполняет поиск надстроек.

 
Public Sub EnumDirectories_Example() 
 
 Dim strDirectoryNames() As String 
 Dim intLowerBound As Integer 
 Dim intUpperBound As Integer 
 
 Application.EnumDirectories Application.AddonPaths, strDirectoryNames 
 
 intLowerBound = LBound(strDirectoryNames) 
 intUpperBound = UBound(strDirectoryNames) 
 
 While intLowerBound <= intUpperBound 
 Debug.Print strDirectoryNames(intLowerBound) 
 intLowerBound = intLowerBound + 1 
 Wend 
 
End Sub

Поддержка и обратная связь

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