Accedi per seguire   
Seguaci 0
navajo

Exception Ereaderror .... Pimage.picture.data Stream Read Error

7 messaggi in questa discussione

Ciao a tutti...

dico subito che NON sono un programmatore!!

Mi sto divertendo con un editor di risorse ... dunque: il mio *.exe ha delle immagini BMP che ho

tranquillamente sostituito ma... ci sono delle GIF espresse in HEX che mi stanno facendo impazzire!!! Dovrei anteporre al codice che scaturisce dalla GIF, una stringa del tipo: 0954474946496D616765EEA40000.

Se sostituisco la GIF esistente con la mia, lasciando questa stringa ... vedi titolo del post:)

Grazie a chi mi darà una mano e a chi mi manderà a quel paese!:))

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ciao a tutti...

dico subito che NON sono un programmatore!!

Mi sto divertendo con un editor di risorse ... dunque: il mio *.exe ha delle immagini BMP che ho

tranquillamente sostituito ma... ci sono delle GIF espresse in HEX che mi stanno facendo impazzire!!! Dovrei anteporre al codice che scaturisce dalla GIF, una stringa del tipo: 0954474946496D616765EEA40000.

Se sostituisco la GIF esistente con la mia, lasciando questa stringa ... vedi titolo del post:)

Grazie a chi mi darà una mano e a chi mi manderà a quel paese!:P)

I dati che ci fornisci non sono molti :P

L'errore viene generato da un componente dell'applicazione che presumibilmente è TImage. E' l'unico che conosco che abbia una proprietà picture...

TImage è un componente VCL di Delphi che funziona esclusivamente con immagini di tipo Bitmap (.BMP). Se provi a sostituire il contenuto di questo componente con un altro formato (GIF, ecc...) il programma va in crash.

Spero di aver centrato il problema... ;-)

:)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

...no ... l'immagine è una GIF e vorrei sostituirla con un'altra GIF con le stesse dimenioni e peso!

Le BMP, le ' vedo ' ...intendo dire che non sono espresse in HEX.

Di seguito una parte del listato tratto dall'editor:

Tutta la parte in HEX compresa nelle parentesi si riferisce ad una GIF!! ...Tranne la parte in grassetto!!!

Ora, se sostituisco la GIF esistente con una mia (ovviamente sempre espressa in HEX) e lascio

la parte in grassetto invariata ...succede che mi dice STREAM READ ERROR.

Ovvero: EXEPTION EREADERROR IN MODULE *.EXE AT ..... ERROR READING PIMAGE.PICTURE.DATA:STREAM READ ERROR.

**Il listato è molto più grande, ho tolto la parte centrale ...non vorrei intasare!!

object Image1: TImage

Left = 0

Top = 79

Width = 790

Height = 466

Align = alClient

Picture.Data = {

0954474946496D616765EEA400004749463839612003F401F700005A94D66394

2003F4014008FE000300104870A0C182080F2A4CC870A1C386101F4A8C4871A2

C58A182F6ACCC871A3C78E203F8A0C4972A4C992284FAA4CC972A5CB96305FCA

8C4973A6CD9A2003E8DCC9B3A7CF9F40830A1D4AB4A8D1A348932A5DCAB4A9D3

A750A34A9D4AB5AAD5AB58B36ADDCAB5ABD7AF4D05F414CB93EC4EB33AD10650

CB76ACDBB26FCFC64D3B776DDDB670F3CAD54B97AF5DBF78F70AEE3BF86FE1C0

84131B568C78B1E3C690EF4A063CF97065C6971F678E4CB9B365CF98416B16CD

F9B3E9D0A747A72E8DBAB56AD7AC5FCB8E4D7BB35C010370AFC52D40376FDE6B

73FB163E2078EFE2BF9113373EFC3873E5CE933F9F2EBDFA72EBD1AF6BCFCEBD

B977E8DFA9FE6F0F8F9DFC78F0E8C5774F5F9EFD79F5E6D7C3772FBFFDFCFBF6

F3BFD75F7FBFFFFE00C627207D03E2F75F81FC217820810C1A1860830942B8A0

830AF6478000040C7061861B6A88A1871C7ED8E188229618E28920A648228A2B

AA68A28B2CBED8E28C32D618E38D30E648238E3BEA68A38F3CFED8E390421619

E49140264924924B2A69A4934C3ED9E494525619E59550664925965B6A69A597

5C7ED925951A72686699659E49C09A68AEA9269B70C6D9A69C74BE69E79C69E2

59679E71BEC9A79F75DE19A89E800E6A68A1730AAA28A189367A28A37D3ABAE8

9E91563A29A26E4AAA29A5665EFA27A49D6E1A2AA7A2168AE9A5A6825A2AA1A7

AEFA28A9FE995A2A2AA89EC6DAAAAD9FCA0AEBABA3DECA6BAEA79A4A4001C3BA

492CB16B1E6B6CB1C9325B2CB2CF2E0BADB2CD4EEB2CB5D1562BEDB6DA769BED

B7D8867BEDB8D696CB2DB8E49E2BAEB9DEAEAB6EBAEDC28B2EBBF3BE4BAFBBF1

DE2B2FBEF5E66BEFBFFE06DCEFC0FC16BCEFC1FA260C30C1082F6CB0C2023FEC

70C31153CC30C4174F8C31B506184040C71E83FC71C723874CB2C8289FACB2C9

2C97EC72CA2DC3FCF2CA33C74CB3CC38DFACB3CD3CD7EC73CE3D03FDF3CE4307

4DB4D0481FADB4D14C17ED74D24D43FDF4D253474DB5D4585FADB5D55C57ED75

D65D83FDF5D663874DB6D868837C00C806ACDDB1DB6FABCD36DC70B72DF7DD76

E35D37FEDD73E39DF7DF7FEFED37DF7AF71D77E1881F0E38E18A0BAE78E0862F

3EF8E48F330E79E297371EB9E392574E79E7A0732EFAE6A4636EF9E99F8F6E7A

EAA56BBEBAE7B087DE7AE6B4A31EBBEAAEE75E3BEBAFCBDE3BEEBBDF3EBBEDBE

EB4E3CF0C7B38D40C7CB2F6F40F3CF470FFDF4D2574FFDF5D6678FFDF6DA77CF

FDF7DE870FFEF8E2974FFEF9E6A78FFEFAEAB7CFFEFBEEC70FFFFCF2D74FFFFD

F6E78FFFFEFAF7CFFFFFFE0B2000C7970003240001074C20020D8800043A5081

107CA0042348C1095AB08218BCA00633C8C10D7AB08320FCA0084348C2119AB0

84283CA10A53C8C215BAB085307CA10C6348C319DAB08638BCA10E73C8C31DFA

B087FE113460021430C4211A8088444C80119178C4222EB1880A68A212999844

240E1181514CE212AD08C52B76318B4E7CE2149528C62A8EF18066A42219B508

46279A118D6354E319CB78C62422208D620C631BDF68473CB6518F52E4A312EF

18C73CB23190751CA41FA50848413A91905F64E4211DD9C742FE7192897CE422

D9B84644BA5191969464272909CA4872728A9E7C2324AD78C95166B292A65CA3

2B3FA9C9509E928EB45C251445894A52C2319673DC63267529C746BEB294ACE4

252E55B94959F6F298BF4CE62D8599CB660633956724262EA178470520D19BE0

1C6238C139CE7292539CDE44673AC9B94E73B6F39CF064A73AD5F9CD77DA939E

F4FEACA73EF7A9CF7CCE939DFD04E83FE349507EFAB3A0014568420B7A50771A

54A10375E842DD894F8142F4A20E6DA83D373AD18E6AF4A1128D2847457A4F79

5A34A408FDA84A4FBAD1959AF4A52D4D294B413A5299C294A6FB7429436F5AD2

9BEAB4A628F5294019A000A21AB5A8483DAA5293CAD4A53AB5A9507DAA54A34A

D5A95AB5AA58BDAA56B3CAD5AD7AB5AB60FDAA58C34AD6B19AB5AC683DAB5AD3

CAD6B5BAB5AD707DAB5CE34AD7B9DAB5AE78BDEB5617C080BEFAB5A87FF5AB60

8D1AD8C1F615B08245EC60157B58C33676B18E256C6223CB58C942F6B286AD6C

651F3B59C76A96B299052D6647CB59D25AB6B3A835ED664FCBDAD2BAB6B0A98D

FE6D6B59BBDACF7A36B4B735ED6B6B8BDBDEC256B5A295ED6E83FB5BD9F256B7

B425EE6B879B5BE126B7B9C58DEE719D6B5BDF2EF7B9D69D6D75810BDDEB6E37

B2E00DAF78C74BDEF29AF7BCE84DAF7AD7CBDEF6BAF7BDF08DAF7CE74BDFFADA

F7BEF8CDAF7EF7CBDFFEFAF7BFE17500031E30E0BE4280010226B0801D406006

5781355885755889B5588DF55891355995755999B55959342000003B}

Stretch = True

end

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Quella stringa che antepino, cosa rappresenterebbe?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

...se ti riferisci a quella in grassetto... lo vorrei proprio sapere anch'io!!!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Coma fai a sapere che quella parte debba restare invariata?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Inviato (modificato)

...mi spiego meglio:

La GIF in questione è rappresentata in HEX ed è racchiusa nelle parentesi graffe.

Ora, la VERA e SOLO GIF, se la apro con un editor esadecimale, non comprende quella stringa anteriore.

1-Sostituisco la GIF preesistente con la mia, lasciando quella stringa invariata = CRASH

2-Sostituisco la GIF preesistente con la mia, omettendo quella stringa = NON APPARE NIENTE MA, NON C'E' NESSUN CRASCH!

Quindi, è come se in quella piccola stringa ci sia un codice che "riassuma" quello che deve seguire. Ovvero OGNI GIF ha la sua bella stringa. Perchè, anche se la sostituzione la sto facendo mantenendo stesse dimensioni e peso... è comunque diversa! :)

In pratica la MIA GIF, avrebbe bisogno della SUA stringa!!

Modificato da navajo

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0