Я использую process.Start для запуска Convert.exe. Цель этой программы - конвертировать все файлы, которые находятся в папке exe. Поэтому, когда я обычно использую его, я копирую, вставляю файл в ту же папку, что и Convert.exe, а затем запускаю Convert.exe. Convert.exe создаст новый «преобразованный» файл в той же папке.
Я пытаюсь автоматизировать этот утомительный процесс. Пользователь выбирает файл, который должен быть преобразован из FolderA, я копирую его в ту же папку, где находится Convert.exe, и использую process.start (Convert.exe) для его запуска.
Просто чтобы быть понятным, этот "Convert.exe" не принимает аргументов.
Проблема: «Convert.exe» не конвертирует файлы в своей папке. Вместо этого он конвертирует все файлы в FolderA по какой-то странной причине. Я не знаю, почему он выбрал эту папку, я даже не пытаюсь отправить ее в качестве аргумента или ничего.
Вот код, который у меня есть:
Dim techInfo As New System.IO.FileInfo(itm.strFilePath)
techInfo.CopyTo(ConverterPath & techInfo.Name)
Dim procInfoConvert As New ProcessStartInfo
procInfoConvert.CreateNoWindow = False
procInfoConvert.Arguments = ""
procInfoConvert.FileName = ConverterPath & "Convert.exe"
Dim procConvert As Process = Process.Start(procInfoConvert)
Я провел тест, в котором скопировал, вставил файл в папку «Convert.exe», а затем просто запустил этот код:
process.start(ConverterPath & "Convert.exe")
exe ничего не возвращает, как если бы в папке не было файлов.
Единственное, о чем я могу думать, это то, что при запуске process.Start он копирует файл в другое место и запускает его оттуда.
Есть идеи у кого-нибудь?