Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Как вычислить crc32 сумму файла?

Ответить
Настройки темы
PowerShell - [решено] Как вычислить crc32 сумму файла?

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день!
Сразу оговорюсь, что использую PowerShell 4. Читала справку, в ней написано, что Get-FileHash вычисляет только MD5/SHA[1,256,384,512]/RIPEMD160 и MACTripleDES. Я конечно знаю, что crc32 это не то чтобы хэш, но какбы хотелось его тоже вычислять. Подскажите как это сделать?

Отправлено: 17:46, 26-05-2015

 

Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Код: Выделить весь код
param(
  [Parameter(Mandatory=$true, ValueFromPipeline=$true)]
  [ValidateScript({Test-Path $_})]
  [String]$FileName
)

(Add-Type -Mem @'
  [DllImport("ntdll.dll")]
  internal static extern UInt32 RtlComputeCrc32(
      UInt32 InitialCrc,
      Byte[] Buffer,
      Int32  Length
  );
  
  public static String ComputeCrc32(String file) {
    UInt32 crc32 = 0;
    Int32  read;
    Byte[] buf = new Byte[4096];
    
    FileStream fs = null;
    
    try {
      fs = File.OpenRead(file);
      while((read = fs.Read(buf, 0, buf.Length)) != 0)
        crc32 = RtlComputeCrc32(crc32, buf, read);
    }
    catch (Exception e) {
      Console.WriteLine(e.Message);
    }
    finally {
      if (fs != null) fs.Close();
    }
    
    return (crc32 != 0 ? "0x" + crc32.ToString("X", CultureInfo.CurrentCulture) : "n/a");
  }
'@ -Name RtlCrc32 -NameSpace Crc32 -Using System.IO,
System.Globalization -PassThru)::ComputeCrc32((Convert-Path $FileName))
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:58, 26-05-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Как вычислить crc32 сумму файла?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - Как вычислить параметр командной строки? SharkX58 Скриптовые языки администрирования Windows 2 08-04-2015 06:27
[решено] Вот как вычислить IP McLotos Хочу все знать 4 30-01-2014 15:17
RAID - Как вычислить сбойный HDD? Avatar-Lion Накопители (SSD, HDD, USB Flash) 6 09-12-2013 13:55
php как посчитать сумму времени? poisonkit Вебмастеру 0 30-07-2013 11:27
[решено] Как подсчитать сумму нескольких переменных Не флужу AutoIt 4 13-08-2009 06:24




 
Переход