Модератор: BV
hCORe писал(а):Спасибо Завтра выложу обновленную версию. А как там с оптимизацией процедуры I_BytesAsStruct? Я знаю, что можно не делать строку, а оставить байтовый массив. Но тогда CopyMemory выдает random'ные результаты
tyomitch писал(а):А где там байтовый массив? Я вижу только байтовую функцию
On Error Resume Next
Dim l As Long
If ByteCount = 0 Then ByteCount = I_Length - SeekPos
For l = 0 To ByteCount - 1
DoEvents
arr(l) = I_Byte(SeekPos + l)
Next l
Public function KillFile (Filename as string, ForceKill as Boolean) as boolean
On Error Resume Next
If ForceKill = True Then SetAttr FileName, vbNormal
Kill Filename
If dir(filename) = "" then Killfile = True
End Function
marvan писал(а):1. On Error Resume Next - не не годится. В таких классах нужна более грамотная обработка ошибок.
2. Нет комментариев к процедурам и функциям. Если ты класс для себя написал, тогда зачем выкдадываеш?
3. Это не класс, а мешанина. Должны быть отделные классы:
- атрибутов файла
- чтения/записи
- создания/копирования/удаления
4. Всё это уже сделано.
hCORe писал(а):А ты хочешь, чтобы класс инициировал ошибки через Err.Raise по информации от LastDllError?
hCORe писал(а):1. А ты хочешь, чтобы класс инициировал ошибки через Err.Raise по информации от LastDllError? ...
hCORe писал(а):3. А мне удобнее так. Просто потому что.
hCORe писал(а):4. Угу. Ты про FSO?
marvan писал(а):hCORe писал(а):1. А ты хочешь, чтобы класс инициировал ошибки через Err.Raise по информации от LastDllError? ...
да, именно так. Потому как класс должен отвечать за свои ошибки, а не тот кто этот класс вызывает.hCORe писал(а):3. А мне удобнее так. Просто потому что.
ну вот, а мне (и может ещё кому) так не удобнее. Например у тебя есть функции чтения/записи файла. Я бы использовал их, но зачем мне в коде два класса, возвращающие расширение файла?hCORe писал(а):4. Угу. Ты про FSO?
не, не fso.
Я про классы, всё выше описанное реализующие. Которые успели наплодить программисты за всё время существования VB. Остаётся только выбрать лучший.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 38