cardNo przy otwieraniu bazy

  • 4 Odpowiedzi
  • 1208 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

cardNo przy otwieraniu bazy
« dnia: Październik 30, 2001, 18:59:38 »
czy ktoś wie jaki numer karty mam wpisać przy tworzeniu bazy w  Palm OS 3.5 jeśli chcę zapisać dane na karcie SD ?

z góry dziękuję za odpowiedź

cardNo przy otwieraniu bazy
« Odpowiedź #1 dnia: Listopad 05, 2001, 23:45:53 »
Na pewno nie zero, bo zero wskazuje na pamięć wewnętrzną. Nie zaglądając do podręcznika sugerowałbym sprawdzenie wartości jeden.

cardNo przy otwieraniu bazy
« Odpowiedź #2 dnia: Listopad 06, 2001, 00:14:31 »
Przykro mi taką ewentualność sprawdziłem i .... nie działa ...

cardNo przy otwieraniu bazy
« Odpowiedź #3 dnia: Listopad 06, 2001, 00:15:39 »
Poczytalem chwile podrecznik do SDK4.0. Parametr cardNo przyjmuje tylko wartosc 0 lub 1, przy czym w kilku miejscach pojawia sie zastrzezenie, ze poki co tylko wartosc zero jest sluszna.

Wydaje mi sie, ze zalozylismy blad myslowy, ze manipulujac parametrem cardNo bedziemy sie dostawali do kart w slotach pamieci. Niestety wyglada na to, ze nie bedzie tak latwo. Karta to nie pamiec operacyjna, ale pamiec masowa. Tablica nazw plikow, te sprawy.

Zajrzyj do dokumentacji SDK4.0: Palm OS Reference.PDF, rozdzial Virtual File System Manager. Znajdziesz tam takie funkcje jak VFSImportDatabaseFromFile, VFSExportDataBaseToFile, VFSFileDBGetRecord, etc.

VFSFileDBGetRecord:
-----------------------
This function is analogous to DmGetRecord but works with files on
an external card rather than databases in main memory. This
function allocates a handle of the appropriate size from the storage
Virtual File System Manager
VFS Manager Functions
heap and returns it in the recHP parameter. The caller is responsible
for freeing this memory, using MemHandleFree, when it is no
longer needed.
-------------

Czyli, ze karty pamieci i pamiec wewnetrzna trzeba traktowac zupelnie inaczej. Stad sie biora wszystkie problemy z uruchamianiem programow bezposrednio z kart, o czym czytamy przy kazdej okazji.

Aha.. Jeszcze jest rozdzial o Expansion Manager, ktory dotyczy wylacznie obslugi slotow pamieci, sprawdzaniu jaka karta w srodku i czy w ogole..

Aha.. a przede wszystkim PalmOS 3.5 nie jest stworzony do obslugi slotow kart pamieci. Takze musisz przesiasc sie na SDK4.0, a jesli chcesz tworzyc oprogramowanie uniwersalne, to koniecznie w swoim programie sprawdzaj wersje systemu, pod ktora jest uruchamiany program, zeby zapobiec uzywaniu funkcji, ktorych w danym systemie moze po prostu nie byc.

Pozdrawiam!

cardNo przy otwieraniu bazy
« Odpowiedź #4 dnia: Listopad 06, 2001, 00:41:38 »
dzięki za pomoc, postudiuję jeszcze dokumentacje do SDK 4.0.