Problemlesendatei mit Smblibrary mit SMB2C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Problemlesendatei mit Smblibrary mit SMB2

Post by Anonymous »

Ich versuche, eine Datei von einem SMB -Server mit .NET7 API und SMBLIBRARY zu lesen, aber der Lesedaten mit Nulldaten und den Status: " status_end_of_file ". class = "Lang-CS PrettyPrint-Override">

Code: Select all

client = new SMB2Client();
bool isConnected = client.Connect("xxxxxxxxxxx", SMBTransportType.DirectTCPTransport);
if (isConnected)
{
NTStatus status = client.Login(string. Empty, "xxxxxxxxxx", "xxxxxxxx");
if (status == NTStatus.STATUS_SUCCESS)
{
//List shares = client.ListShares(out status);
var folderPath = "folder1\\folder2\\folder3";
var shareName = "share";

ISMBFileStore fileStore = client.TreeConnect(shareName: shareName, out status);
if (status == NTStatus.STATUS_SUCCESS)
{
object directoryHandle;
FileStatus fileStatus;
status = fileStore.CreateFile(out directoryHandle, out fileStatus, "", AccessMask.GENERIC_READ, 0, ShareAccess.Read | ShareAccess.Write | ShareAccess.Delete, CreateDisposition.FILE_OPEN, CreateOptions.FILE_DIRECTORY_FILE, null);
status = fileStore.CreateFile(out directoryHandle, out fileStatus, folderPath, AccessMask.GENERIC_READ, 0, ShareAccess.Read, CreateDisposition.FILE_OPEN, CreateOptions.FILE_DIRECTORY_FILE, null);
status = fileStore.CreateFile(out directoryHandle, out fileStatus, "file1.pdf", AccessMask.GENERIC_READ | AccessMask.SYNCHRONIZE, FileAttributes.Normal, ShareAccess.Read, CreateDisposition.FILE_OPEN, CreateOptions.FILE_NON_DIRECTORY_FILE | CreateOptions.FILE_SYNCHRONOUS_IO_ALERT, null);

if (status == NTStatus.STATUS_SUCCESS)
{
MemoryStream stream = new MemoryStream();
byte[] data;
long bytesRead = 0;
while (true)
{
status = fileStore.ReadFile(out data, directoryHandle, bytesRead, (int) client.MaxReadSize);
//returned status :  STATUS_END_OF_FILE

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post