[ Aleksandar Ilić @ 30.12.2004. 18:13 ] @
Kako dobiti u Delphi-ju kada je određeni CD u čitaču narezan (datum, tačno vreme, svejedno je)?

Unapred hvala.
[ bancika @ 30.12.2004. 23:22 ] @
jesi siguran da ta informacija uopste postoji na disku?
neki programi mogu da promene vreme fajlova u procesu rezanja, pa onda proveri vreme proizvoljnog fajla...ali ovako mislim da ne moze
[ Aleksandar Ilić @ 31.12.2004. 12:37 ] @
Ne znam da li postoji, ali ništa nije nemoguće.

Ova informacija mi treba, jer bi hteo da napišem neki programčić koji na osnovu te informacije generiše neki serijski broj. A da bi pristupili podacima na tom disku, serijski broj koji bi se dobio pokretanjem CD-a bi trebao da se poklopi sa pravim serisjkim brojem.
I sada kada bi neko otvorio piratski CD, ne bi mogao da pristupi podacima, jer je taj CD kasnije narezan i serijski broj koji bi se dobio, ne bi bio isti kao onaj serijski broj na originalnom CD-u.

Ovo je samo teorija.


Citat:
bancika:
neki programi mogu da promene vreme fajlova u procesu rezanja

Ja imam Nero i nažalost on ne menja vreme fajlova. Znaš li neki program koji to radi?
[ Voodoo @ 31.12.2004. 12:50 ] @
Nero moze da menja vremena fajlova. Samo u "New Compilation" prozoru u kartici "Dates" moras chekirati "Use this date" i upisati zeljeni datum.
Inace, datum kreiranja diska se nalazi na tacno odredjenoj poziciji u Primary Volume Descriptoru (obrati paznju na "date and time of volume creation"):

Code:
     length
     in bytes  contents
     --------  ---------------------------------------------------------
        1      1
        6      67, 68, 48, 48, 49 and 1, respectively (same as Volume
                 Descriptor Set Terminator)
        1      0
       32      system identifier
       32      volume identifier
        8      zeros
        8      total number of sectors, as a both endian double word
       32      zeros
        4      1, as a both endian word [volume set size]
        4      1, as a both endian word [volume sequence number]
        4      2048 (the sector size), as a both endian word
        8      path table length in bytes, as a both endian double word
        4      number of first sector in first little endian path table,
                 as a little endian double word
        4      number of first sector in second little endian path table,
                 as a little endian double word, or zero if there is no
                 second little endian path table
        4      number of first sector in first big endian path table,
                 as a big endian double word
        4      number of first sector in second big endian path table,
                 as a big endian double word, or zero if there is no
                 second big endian path table
       34      root directory record, as described below
      128      volume set identifier
      128      publisher identifier
      128      data preparer identifier
      128      application identifier
       37      copyright file identifier
       37      abstract file identifier
       37      bibliographical file identifier
       17      date and time of volume creation
       17      date and time of most recent modification
       17      date and time when volume expires
       17      date and time when volume is effective
        1      1
        1      0
      512      reserved for application use (usually zeros)
      653      zeros


ali njemu mozes pristupiti samo preko ASPI ili SPTI poziva.
Vodi racuna da disk cesto ima vise volume descriptora (jedan za ISO i jedan za Joliet fajl sistem), ali su datumi isti u oba.
Primer datuma moze biti 2004070812000000 i na kraju chr(8), i to se interpretira kao 2004. 07. 08. 12:00:00.00.
Tacnu lokaciju primarnog volume descriptora ne znam, ali ako uspes da izvedes direktan pristup disku, samo trazi niz bajtova koji glasi "CD001", jer posle njega dolazi raspored bajtova kao u gornjoj tabeli.

Ako ti ovo nije bilo najjasnije, skini programcic IsoBuster, ubaci neki disk u drajv a onda startuj IsoBuster. U listi u levom delu prozora pritisni desno dugme na tekst pored koga stoji slicica "ISO" i izaberi "Sector view". Otvorice ti se prozor sa sadrzajem ISO volume descriptora za taj disk, tako da mozes videti kako to izgleda u praksi.

Nadam se da sam ti ista pomogao.