Koleżanki i koledzy uczę się VB.Net i do swojej aplikacji potrzebuję sprawdzić czy aktualnie jest otwarty plik o określonej nazwie. Niestety ale nie wiem jak mam sprawdzić (pobrać) jego nazwę. W VBA w Excelu sprawdza się to za pomocą: ActiveWorkbook.Name a VB.Net nie wiem jak to zrobić.

- Rejestracja:ponad 6 lat
- Ostatnio:ponad rok
- Postów:192
0
Nie jestem pewien czy to cię zadowoli w 100% ale wyskrobałem coś takiego
w C# napisałem sam
public bool IsFileLocked(string filename)
{
if (File.Exists(filename) != true)
throw new Exception("File doesn't exists");
bool isLocked = false;
try
{
FileStream fs = File.Open(filename, FileMode.Open, FileAccess.ReadWrite);
fs.Close();
}
catch
{
isLocked = true;
}
return isLocked;
}
A tu w VB ale jest to na szybko prze konwertowany kod c#
Public Function IsFileLocked(ByVal filename As String) As Boolean
If File.Exists(filename) <> True Then Throw New Exception("File doesn't exists")
Dim isLocked As Boolean = False
Try
Dim fs As FileStream = File.Open(filename, FileMode.Open, FileAccess.ReadWrite)
fs.Close()
Catch
isLocked = True
End Try
Return isLocked
End Function
PS: filename to ścieżka do pliku, najlepiej pełna ^ ^
edytowany 1x, ostatnio: Yukiteru Gromadzki
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.