- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
internal class Log
{
public static void WriteLine(string methodName, UpdateFile file, Exception e, LogType type = LogType.Success)
{
using (FileStream fileStream = new FileStream(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + "\\patch.log", FileMode.OpenOrCreate))
{
using (StreamReader streamReader = new StreamReader(fileStream))
{
using (StreamWriter streamWriter = new StreamWriter(fileStream))
{
streamWriter.WriteLine(string.Format("Launcher | {0} | {1} | {2} | {3} | {4}", new object[]
{
type,
methodName,
file.FullPath,
e,
DateTime.Now
}), streamReader.ReadToEnd().Length);
}
}
}
}
...
Как получить размер файла? Правильно, надо прочитать его в память и взять размер данных из памяти :facepalm:
Зачем получать размер файла, даже не спрашивайте ))
Источник: hxxp://promo.riseofrunes.com/InstLauncher.zip (C#, декомпилятор).
SemaReal 31.10.2017 23:30 # 0
d_fomenok 01.11.2017 11:50 # +2
A: А вдруг файловая система вернёт неверный размер файла?
B: Ну, считаем весь файл в память и посчитаем размер в памяти.
A: А вдруг файловая система выдаст не всё содержимое файла?
B: ...
kegdan 01.11.2017 13:50 # +1
inho 01.11.2017 18:35 # +1
bormand 01.11.2017 19:00 # +1
На планках без ECC это заканчивается всякими рандомными багами...
g0cTb 01.11.2017 22:57 # 0
CHayT 02.11.2017 00:12 # +2
vistefan 03.11.2017 10:59 # 0
Да и для вычисления чексуммы в первый раз ты файл тоже с диска считаешь, а им верить нельзя.
Может, конечно, ты в уме мд5 умеешь, и хорошо запоминаешь, но нафиг суммы, лучше тогда сразу запоминай сами файлы.
bormand 03.11.2017 18:09 # 0
На тот же носитель. Один хер все чексуммы и коды коррекции только с определённой вероятностью работают...
SemaReal 03.11.2017 18:10 # +2
Смотри, есть два носителя: на какой сам сохранишь, с какого для матери считаешь?
subaru 03.11.2017 18:12 # 0
d_fomenok 01.11.2017 11:52 # 0
Что это за изврат такой?
inkanus-gray 01.11.2017 12:22 # 0
d_fomenok 01.11.2017 13:16 # 0
kegdan 01.11.2017 13:51 # 0
А это уже разврат
CHayT 01.11.2017 16:48 # +5