private byte[] commonAction(string _name, MainModel.LogType _type) { string message = "Отправляем информацию о файле;"; log(message, _type, MainModel.ModelPart.Server); model.server.networkStream = model.server.user.TcpClient.GetStream(); byte[] byteSend = new byte[model.server.user.TcpClient.ReceiveBufferSize]; FileInfo fInfo = new FileInfo(model.server.serverWatcher.Path + "\\" + _name); message = "Отправляем команду - " + model.server.Command + ";"; log(message, _type, MainModel.ModelPart.Server); byte[] ByteCommand = new byte[MainModel.FIXED_BUFFER_SIZE]; ByteCommand = System.Text.Encoding.UTF8.GetBytes(model.server.Command.ToCharArray()); model.server.networkStream.Write(ByteCommand, 0, ByteCommand.Length); string FileName = fInfo.Name; byte[] ByteFileName = new byte[MainModel.MAX_BYTES_BUFFER_SIZE]; ByteFileName = System.Text.Encoding.UTF8.GetBytes(FileName.ToCharArray()); string FileLength; makeFormatedLenght(ref ByteFileName, out FileLength); message = "Отправляем длину имени - " + FileLength + ";"; log(message, _type, MainModel.ModelPart.Server); byte[] ByteFileNameLength = new byte[MainModel.FIXED_BUFFER_SIZE]; ByteFileNameLength = System.Text.Encoding.UTF8.GetBytes(FileLength.ToCharArray()); model.server.networkStream.Write(ByteFileNameLength, 0, ByteFileNameLength.Length); message = "Отправляем имя - " + FileName + ";"; log(message, _type, MainModel.ModelPart.Server); model.server.networkStream.Write(ByteFileName, 0, ByteFileName.Length); return(ByteFileName); }
private void renameFileForUser(string _name, string _newName) { string message = "Отправляем информацию о файле;"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); model.server.networkStream = model.server.user.TcpClient.GetStream(); byte[] byteSend = new byte[model.server.user.TcpClient.ReceiveBufferSize]; FileInfo fInfoOld = new FileInfo(model.server.serverWatcher.Path + "\\" + _name); FileInfo fInfoNew = new FileInfo(model.server.serverWatcher.Path + "\\" + _newName); message = "Отправляем команду - " + model.server.Command + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); byte[] ByteCommand = new byte[MainModel.FIXED_BUFFER_SIZE]; ByteCommand = System.Text.Encoding.UTF8.GetBytes(model.server.Command.ToCharArray()); model.server.networkStream.Write(ByteCommand, 0, ByteCommand.Length); string FileNameOld = fInfoOld.Name; string FileNameNew = fInfoNew.Name; byte[] ByteFileName = new byte[MainModel.MAX_BYTES_BUFFER_SIZE]; ByteFileName = System.Text.Encoding.UTF8.GetBytes(FileNameOld.ToCharArray()); string FileLength; makeFormatedLenght(ref ByteFileName, out FileLength); message = "Отправляем длину старого имени - " + FileLength + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); byte[] ByteFileNameLength = new byte[MainModel.FIXED_BUFFER_SIZE]; ByteFileNameLength = System.Text.Encoding.UTF8.GetBytes(FileLength.ToCharArray()); model.server.networkStream.Write(ByteFileNameLength, 0, ByteFileNameLength.Length); message = ByteFileName.Length.ToString() + " - длина имени файла" + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); message = "Отправляем имя - " + FileNameOld + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); model.server.networkStream.Write(ByteFileName, 0, ByteFileName.Length); log("Старое имя отправлено;", MainModel.LogType.Rename, MainModel.ModelPart.Server); byte[] ByteFileNewName = new byte[MainModel.MAX_BYTES_BUFFER_SIZE]; ByteFileNewName = System.Text.Encoding.UTF8.GetBytes(FileNameNew.ToCharArray()); string NewFileLength = ""; for (int count = 0; count < 2 - ByteFileNewName.Length.ToString().Length; count++) { NewFileLength += "0"; } NewFileLength += "0" + ByteFileNewName.Length.ToString(); message = "Отправляем длину новго имени - " + NewFileLength + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); byte[] ByteFileNewNameLength = new byte[MainModel.FIXED_BUFFER_SIZE]; ByteFileNewNameLength = System.Text.Encoding.UTF8.GetBytes(NewFileLength.ToCharArray()); model.server.networkStream.Write(ByteFileNewNameLength, 0, ByteFileNewNameLength.Length); message = ByteFileNewName.Length.ToString() + " - длина имени файла;"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); message = "Отправляем имя - " + FileNameNew + ";"; log(message, MainModel.LogType.Rename, MainModel.ModelPart.Server); model.server.networkStream.Write(ByteFileNewName, 0, ByteFileNewName.Length); log("Новое имя отправлено;", MainModel.LogType.Rename, MainModel.ModelPart.Server); model.server.fileStream.Close(); log("Файл переименован у всех пользователям;", MainModel.LogType.Rename, MainModel.ModelPart.Server); log("Все потоки закрыты", MainModel.LogType.Rename, MainModel.ModelPart.Server); }