|
|
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Как известно, функция Dir, если ее вызвать без аргументов, помнит последний переданный аргумент. На этом основаны циклы, которые проходят по всем файлам заданного типа: Код: plaintext 1. 2. 3. 4. Проблема в том, что у меня внутри такого цикла есть обращение к функции, которая тоже использует Dir с параметром, но совершенно с другим. В результате цикл сбивается. Как это обойти? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 00:25 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
В качестве временного решения завел коллекцию и первым циклом заполнил ее (не обращаясь к функции), а второй цикл пустил по коллекции, а не по Dir. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Может, есть более красивое решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 00:36 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Можно попробовать дополнить поиск альтернативными методами: см. 1 и 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 10:03 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Либо использовать FSO, в принципе неплохой класс и достаточно удобный, некоторые только через него и работают... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 10:58 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Ага. Сейчас придет Сенин Виктор и выскажет все, что он думает по поводу FSO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 11:06 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Либо Office.FileSearch либо WinAPI HOWTO: Search Directories to Find or List Files When looking for files, it is often necessary to search through subdirectories. This article demonstrates two methods for recursively searching directories and retrieving file information. Код: 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. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 11:20 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
я ссылок не читаю :) - я МСДН читаю.к тому же доступ к микрософту у меня закрыт :( == кстати, в МСДН написано, что быстрей через API работать не будет - Не верю (С) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 11:34 |
|
||
|
Два раза Dir
|
|||
|---|---|---|---|
|
#18+
Функции поиска на основе API друг другу не мешают, к тому же они не мешают и Dir(). Эта тестовая процедура возвращает все файлы по 3-м маскам. Использует самодельный класс "clsFilesSystem" и его метод "FindFileForMask". Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. А FSO не имеет методов поиска по маске(?!). Если его использовать в среде VB(A), то можно использовать Like, а вот VBScript не поддерживает ни Like, ни Declare (чтоб использовать API). К сожалению... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2003, 12:09 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1709&tid=1677781]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
15ms |
get forum data: |
4ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 423ms |

| 0 / 0 |
