Создание Эльфов : Эльфостроение : Форум |
Страница 82 из 211: « 1 ... 78 79 80 81 [82] 83 84 85 86 ... 211 » |
Joker XT: |
14.03.09, 10:02 |
typedef struct { int FullVolume; int FreeVolume; int SizeCluster; int AllClusters; int AllFreeClusters; int unk5; int unk6; //0 int unk7; //0 }VOLUMESIZE; int *mem3 = new int[8]; int *mem2 = new int[8]; GetVolumeSize(_T("/tpa"),mem3); FullVolume = mem3[0]; if(GetVolumeSize(_T("/usb"),mem2)>=0) FreeVolume = mem3[2]*(mem3[5]+mem2[5]); else FreeVolume = mem3[1]; OccupiedVolume = FullVolume-FreeVolume; |
Deitro: |
14.03.09, 20:17 |
Какая-то ерунда у меня с bcfg-конфигами. При компиляции любого эльфа, использующего такие конфиги (для примера хотя бы BcfgExample) и последующем запуске эльфа на телефоне создается конфиг нулевой длины. Хотя эльфы, скомпилированные другими, создают нормальные конфиги. Возможно, какие-то особые настройки IAR нужны для нормальной компиляции эльфов с bcfg? В файле conf_loader.cpp после строчки Код: unsigned int len=(char *)__segment_end("CONFIG_C")-(char *)__segment_begin("CONFIG_C"); я пробовал MessageBox'ом выводить len. Как и ожидалось, len было равно 0. Может, дело в этом "CONFIG_C"? |
UltraShot: |
14.03.09, 20:17 |
Deitro, установи сегмент CONFIG в опциях config_data.c |
Deitro: |
14.03.09, 20:33 |
UltraShot, спасибо. Неплохо бы было это где-нибудь на видном месте написать. Хотя это видимо я один отстал от жизни, а все остальные это знают |
MaPkiZzz: |
14.03.09, 20:34 |
Deitro, тоже самое, хотел привязать бкфг к своим эльфам, но в итоге получал эту ошибку Было уже подумал, о кривоте рук))) |
SlaveMaster: |
14.03.09, 23:01 |
Имется код Код: int *card = new int[8]; int *phone = new int[8]; GetVolumeSize((char *)_T("/card"),(VOLUMESIZE *)card); GetVolumeSize((char *)_T("/tpa"),(VOLUMESIZE *)phone); long int p = card[1]*100 /card[0]; //в надежде получить long int p2 = phone[1]*100/phone[0]; //процент свободного места MessageBox(0x6fFFFFFF,int2strID(p),0, 1 ,5000,0); MessageBox(0x6fFFFFFF,int2strID(p2),0, 1 ,5000,0); На выходе одно сообщение содержит "3", второе "-3"(в реале на карте и телефоне свободно ~ по 20%). Что не так? |
Joker XT: |
14.03.09, 23:32 |
VOLUMESIZE *card = (VOLUMESIZE *)malloc(sizeof(VOLUMESIZE)); VOLUMESIZE *phone= (VOLUMESIZE *)malloc(sizeof(VOLUMESIZE)); GetVolumeSize((char *)_T("/card"),card); GetVolumeSize((char *)_T("/tpa"),phone); long int p = card->FreeVolume ; // свободное место в байтах |
SlaveMaster: |
15.03.09, 10:31 |
Да не, Жень, место в байтах он нормально отображает при вышеприведённом коде, меня интересовали только проценты, вот их как ни мучился плучить не могу.. Вот как определяется длина полосок в твоём эльфе IFMD? Тоже ведь через отношение занятого ко всему объему должно? |
arban: |
15.03.09, 10:55 |
SlaveMaster, свободное_место / (всего / 100). Пробуй так |
SlaveMaster: |
15.03.09, 12:09 |
arban, пасиба, отлично работает! |
Страница 82 из 211: « 1 ... 78 79 80 81 [82] 83 84 85 86 ... 211 » |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=2479&start=810 © 2005-2018 supertrubka.org |