Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Virtual ListView 
:(
    Опции темы
Ak47black
  Дата 29.3.2007, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: 1
Всего: 0



С Delphi даеться пример Virtual ListView.
Все-бы хорошо ,но при просмотре директории где храняться файлы большого объёма, например 5Gb ,то эти файлы выводяться размером по 1kb.
Пробовал поменять все Integer на Int64, но безуспешно.
Переполнение я как понимаю в самом коде программы не происходит, так как если-бы происходило переполнение ,то они-бы невесили по 1kb.
Значит гдето вне програмы, только где и как исправить код что-бы он неврал  smile .
Буду рад любой помоши.
PM MAIL   Вверх
MetalFan
Дата 30.3.2007, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



не нашол у себя файл 5Гб, тестил на 4 с копейками. да, "округляет" до 1 Кб)
что меняем:
Код

  TShellItem = record
    FullID,
    ID: PItemIDList;
    Empty: Boolean;
    DisplayName,
    TypeName: string;
    ImageIndex: Integer;
    Size: Int64; // ватэта
    Attributes: Integer;
    ModDate: string;
  end;
....
procedure TForm1.CheckShellItems(StartIndex, EndIndex: Integer);
...
   Size :=  (FileData.nFileSizeHigh shl 32) +  FileData.nFileSizeLow; //
...

procedure TForm1.ListViewData(Sender: TObject; Item: TListItem);
...
    if not IsFolder(FIShellFolder, ID) then
      Item.SubItems.Add(Format('%dKB', [(Size+1023) div 1024])) //
...


у меня заработало)

Это сообщение отредактировал(а) MetalFan - 30.3.2007, 09:24


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Ak47black
Дата 30.3.2007, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: 1
Всего: 0



Всетакие тут этот код ведёт в правильную сторону, но
тут чтото неправильно
Код

Size :=  (FileData.nFileSizeHigh shl 32) +  FileData.nFileSizeLow;

Файлы больше размером 256^4=4294967296 почемуто ненаходит правильно.

Это сообщение отредактировал(а) Ak47black - 30.3.2007, 16:51
PM MAIL   Вверх
Ak47black
Дата 30.3.2007, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: 1
Всего: 0



Проблема нерешена до конца.

Это сообщение отредактировал(а) Ak47black - 30.3.2007, 16:51
PM MAIL   Вверх
Ak47black
Дата 30.3.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: 1
Всего: 0



smile Я тут смотрю что дело не в в том что я немогу сделать, а в том что тут Micro$ost неправильно сделала
Код

FileData.nFileSizeHigh и FileData.nFileSizeLow


Добавлено через 8 минут и 10 секунд
Ну кроме как в обход я нечего ненашол.
Если что-нибудь, кто-нибудь сможет предложить, то пишите.

Это сообщение отредактировал(а) Ak47black - 30.3.2007, 18:13
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0424 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.