Home >Backend Development >C++ >How Can I Access Files Locked by Other Processes in VB.NET and C#?

How Can I Access Files Locked by Other Processes in VB.NET and C#?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-16 15:42:09433browse

How Can I Access Files Locked by Other Processes in VB.NET and C#?

VB.NET and C# Solutions for Accessing Files Locked by Other Processes

Accessing files simultaneously used by multiple processes often results in the dreaded "in-use" exception. This guide provides reliable methods to read and modify files in VB.NET and C# even when they're locked by other applications.

Utilizing FileShare in VB.NET and C#

A straightforward solution involves the FileShare parameter when opening file streams. Setting FileShare.ReadWrite signals the application's willingness to share file access.

VB.NET Example:

<code class="language-vb.net">Dim strContents As String
Dim objReader As StreamReader
objReader = New StreamReader(FullPath, FileShare.ReadWrite)
strContents = objReader.ReadToEnd()
objReader.Close()</code>

C# Example:

<code class="language-csharp">using (var objReader = new StreamReader(FullPath, FileShare.ReadWrite))
{
    var strContents = objReader.ReadToEnd();
}</code>

Alternative Approach: Employing FileStream

The FileStream class offers finer-grained control over file access. This example demonstrates its usage:

<code class="language-csharp">using (var logFileStream = new FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
using (var logFileReader = new StreamReader(logFileStream))
{
    while (!logFileReader.EndOfStream)
    {
        string line = logFileReader.ReadLine();
        // Process each line
    }
}</code>

This code opens the file using FileStream, specifying FileMode.Open, FileAccess.Read, and FileShare.ReadWrite. A StreamReader then efficiently reads the file's content.

Source Attribution

The FileStream approach is adapted from: https://www.php.cn/link/c7876d6b0f9d5461fd3e87c0d1e51e12

The above is the detailed content of How Can I Access Files Locked by Other Processes in VB.NET and C#?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn