2010-02-03 3 views
1

Я пытаюсь использовать класс VB.Net FileSystemWatcher для просмотра папки для создания файлов Excel. Я получаю ответ, когда файл .xls создается в папке, но у меня возникают проблемы с кодом ниже:vb.net file watch возвращает неправильное имя файла

Private Sub AddWatch() 

Dim watch As New FileSystemWatcher 

     AddHandler watch.Changed, AddressOf FileChange 
     watch.Filter = "*.*" 
     watch.NotifyFilter = NotifyFilters.LastWrite 
     watch.Path = "C:\Documents and Settings\my.user\Desktop\testing" 
     watch.EnableRaisingEvents = True 
End Sub 

    Private Sub FileChange(ByVal obj As Object, ByVal e As System.IO.FileSystemEventArgs) 

     Debug.Print("changetype is: " & e.ChangeType.ToString & ", path is: " & e.FullPath.ToString) 
    End Sub 

Когда я создаю текстовый файл в этой папке, я получаю обратно правильное имя файла («C: \ Documents and Settings \ my.user \ Desktop \ testing \ foo.txt»). Однако, когда я сохраняю файл Excel в папке, путь все равно правильный, но имя файла является мусором (каждый раз отличается одним и тем же именем файла, всегда 8 символов, таких как «C: \ Documents and Settings \ my.user \ Desktop» \ testing \ DE0B5800 ".) Невозможно найти вещь в этом поиске Google или здесь, а MSDN, как обычно, мало помогает. Кто-нибудь сталкивается с этим раньше или знает, где я могу найти дополнительную информацию?

+0

похоже, что Excel сначала сохраняет временный файл? –

+0

звучит как временный файл, который Excel пишет – pm100

ответ

1

http://support.microsoft.com/kb/814068

В итоге:

Когда Excel сохраняет файл, Excel выполните следующие действия:

  1. Excel создает случайным именем временный файл (например, Cedd4100 без расширения имени файла) в папке назначения , указанной вами в диалоговом окне «Сохранить как». Вся рабочая тетрадь написана во временный файл .
  2. Если изменения сохраняются в существующий файл, Excel удаляет исходный файл .
  3. Excel переименовывает временный файл. Excel предоставляет временный файл имя файла, которое вы указали (например, как Book1.xls) в диалоговом окне «Сохранить как» .
+0

Спасибо, вот и все. Похоже, я буду писать. –

Смежные вопросы