SPH a écrit :1> J'utilise IncludeFile ou bien IncludeBinary ?
IncludeBinary
SPH a écrit :2> en mettant "dta:" avant le fichier inclut et "dta2:" apres, certain reussissent a connaitre la longueur du fichier inclu avec des "?" je crois. C'est quoi deja la syntaxe pour "soustraire" l'etiquette 2 a l'etiquette 1 ???!
Oui, il faut soustraire l'étiquette de début de l'étiquette de fin.
Personellement, j'utilise les Datas (avantage : tout dans la même source). Mais c'est l'équivalent de IncludeBinary.
Ci-dessous, 2 exemples :
Exemple 1 avec une image (sans compression) :
Code : Tout sélectionner
Enumeration
#Window_0
EndEnumeration
Enumeration
#Image_0
EndEnumeration
Enumeration
#Image_Image_0
EndEnumeration
DataSection
Image_Image_0:
Data.l $00010000,$20200001,$00010004,$02E80004,$00160000,$00280000,$00200000,$00400000,$00010000,$00000004,$02800000,$00000000
Data.l $00000000,$00000000,$00000000,$00000000,$80000000,$00800000,$80800000,$00000000,$80000080,$00800080,$80800080,$C0C00080
Data.l $FF0000C0,$00FF0000,$FFFF0000,$00000000,$FF0000FF,$00FF00FF,$FFFF00FF,$000000FF,$00000000,$00000000,$00000000,$00000000
Data.l $00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000
Data.l $00000000,$00000000,$00000000,$00000000,$00000000,$BFBFFFB8,$00000000,$00000000,$8B000000,$FBFBFF8B,$000000FB,$00000000
Data.l $B8080000,$BFBFFFB8,$0000A0BF,$00000000,$8BFF0000,$FBFBFF8B,$0000AAFA,$00000000,$F8BF0F00,$BFBFFFB8,$00A0AFBA,$00000000
Data.l $FFFBFB00,$FBFB8F8B,$00FBFBAA,$00000000,$BFBFBF00,$BABFBFF8,$00BFBFAF,$00000000,$FBFBFB0B,$AAFB8FFF,$F0FBFBFB,$00000000
Data.l $BFBFBF0F,$AF0000BF,$B0BFBFBF,$00000000,$FBEEEE0E,$0B0000F0,$F0FBFBFB,$00000000,$EEEEEE0E,$0E0000E0,$E0EEEEEE,$00000000
Data.l $FBFBFB0B,$0B0000F0,$E0EEEEFB,$00000000,$BFBFBF0F,$FF0000BA,$B0BFBFBF,$00000000,$FBFBFB0B,$FFF8FBAA,$F0FBFBFB,$00000000
Data.l $BABFBF0F,$8FFBBFAF,$B0BFBFFF,$00000000,$AAFBFB00,$B8F8FBFB,$00FBFBFF,$00000000,$AFBABF00,$8BFFBFBF,$00BFFF8F,$00000000
Data.l $ABAA0B00,$B8FFFBFB,$00F0FFB8,$00000000,$BFAA0000,$8BFFBFBF,$00008F8B,$00000000,$FB0B0000,$B8FFFBFB,$0000B0B8,$00000000
Data.l $BF000000,$8BFFBFBF,$0000008B,$00000000,$00000000,$B8FFFBFB,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000
Data.l $00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000
Data.l $00000000,$00000000,$00000000,$FFFF0000,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$F0FFFFFF,$C0FFFF0F,$80FFFF03,$00FFFF01,$00FEFF00
Data.l $00FC7F00,$00F83F00,$00F81F00,$00F01F00,$00F00F00,$03F00F00,$03F00FC0,$03F00FC0,$00F00FC0,$00F00F00,$00F00F00,$00F80F00
Data.l $00F81F00,$00FC1F00,$00FE3F00,$00FF7F00,$80FFFF00,$C0FFFF01,$F0FFFF03,$FFFFFF0F,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data.b $FF,$FF
EndDataSection
Procedure OpenWindow_Window_0()
If OpenWindow(#Window_0, 450, 200, 319, 89, "DataSection", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
ImageGadget(#Image_0, 145, 25, 36, 36, CatchImage(#Image_Image_0, ?Image_Image_0), #PB_Image_Border)
EndIf
EndProcedure
OpenWindow_Window_0()
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Select EventWindow()
Case #Window_0
CloseWindow(#Window_0)
Break
EndSelect
EndSelect
Forever
Exemple 2 avec un autre fichier (avec compression) :
Code : Tout sélectionner
Procedure jaPBe_UnpackMemory(*Label, *BufferLen.Long) ; Unpack memory bank [returns *Buffer if success] Ex : *Buffer = jaPBe_UnpackMemory(?Label, @BufferLen.l)
Protected *Buffer
*BufferLen\l = PeekL(*Label + 2)
If *BufferLen\l
*Buffer = AllocateMemory(*BufferLen\l)
If *Buffer
If UnpackMemory(*Label, *Buffer) = #False
ProcedureReturn 0
EndIf
EndIf
EndIf
ProcedureReturn *Buffer
EndProcedure
; IncludeBinary "2DDrawing.pb" <JCalG1 Packed> [?Drawing_pb_Start , ?Drawing_pb_End]
;{ Original Size = 1490 bytes ; Packed Size = 774 bytes
DataSection
Drawing_pb_Start:
Data.l $05D2434A,$67E50000,$58C12DB5,$96A32005,$4044C014,$31BA4F78,$EE353801,$F644FA36,$45D1FA77,$CEF6F09D,$DD334267,$678F9DE4
Data.l $B99DB7DC,$28C59B88,$7B66C3C0,$29898C4A,$8DE67C25,$514D5585,$08CCBF27,$C37DF0E0,$189D9E5D,$5580A73A,$725B1A59,$6F9322FF
Data.l $4DAE179B,$EA6A35A2,$E5405ED9,$12A523F4,$61AB56A1,$DBE9829A,$9F0E9ECA,$1A08EA98,$C35FE6A4,$06A1B968,$D04BA9A6,$012C0A34
Data.l $C7AFA765,$350237BF,$7819BA60,$053DE3AB,$0A37099C,$1E7A93C6,$ECBF1C5C,$BC44A918,$02E63411,$8A008B6C,$E68CD36E,$273D9AFD
Data.l $02CD9B2E,$08680106,$9A513B33,$7E0853A7,$06CEE9F0,$3BD37C95,$8BD7828D,$0181C147,$C4B0D5CC,$8FDC713E,$A009025C,$6645F36D
Data.l $9E805580,$D241EDC0,$C8D54541,$930338D1,$1C5D2722,$B7A9451B,$B9B0659A,$397B0011,$386A01AE,$259983F0,$12A5180D,$51080810
Data.l $B602D90A,$91826EF5,$A395F18E,$E4AF12F3,$33C14C62,$E1DE1133,$8D76DC1C,$12771D17,$42806BA8,$8A318A87,$C6F04806,$E1B303DC
Data.l $DC326015,$0AA0A651,$04CEDEF3,$694D0261,$F0D0767B,$52A1A350,$92D85718,$9D4D8A37,$A12F8B2A,$ED2804A8,$E35C61F2,$AA30164C
Data.l $28086AA9,$042C946F,$10C80BA9,$AFB3B135,$EE0D4D71,$C554C2D5,$3DAD0B58,$51A02E65,$0002E0C0,$DDE030A7,$00DB234A,$8A2058A8
Data.l $D66D8DCA,$981201BB,$9CD3BE77,$5B491316,$A62F284B,$06211467,$58688EF1,$BAE38189,$BB802C01,$B9CB42B3,$B28D0CA7,$6D02CCA7
Data.l $017369D7,$516C2C20,$536904CB,$6249A4D0,$7A86AD03,$53DBCAB3,$462F5A96,$964716B2,$C3701A49,$35016BD0,$D2CB4E60,$56A0BCB5
Data.l $3567CA2D,$93A57465,$4C94282C,$5A943B14,$62DDCC39,$16BA3948,$8E226E60,$CDF5FA4A,$D38E8561,$32830446,$1C050227,$407860FC
Data.l $0614850E,$80FC03C7,$01AE9D07,$9AC1E86A,$40034345,$14613ADB,$F685C6FF,$1BE6AC0E,$08014187,$6CA2470C,$B1D22EB0,$918617FB
Data.l $CEB469B1,$A4B3890E,$8700094C,$C2967683,$0A10F801,$1213C044,$00A7E212,$2342CC23,$3AE533C0,$A991148B,$9AEB8B6B,$2DC6B60B
Data.l $E6EB22F3,$78B56CC9,$794CEF9A,$028D814E,$26E53CCB,$0ECBFE26,$080D97D0,$8DBADCA8,$0538E318,$D402DB8A,$C6CB3C85,$B58A9400
Data.l $D659818B,$EA244D90,$1F8A58EB,$04B20C0D,$A2A269AC,$78CCC24C,$AD819CAD,$601F7328,$AD1AF6E4,$71728654,$8A8F60D9,$FEC81342
Data.l $0000EC86
Data.b $00,$00
Drawing_pb_End:
EndDataSection ;}
Enumeration
#Window_0
EndEnumeration
Enumeration
#Editor_1
EndEnumeration
If OpenWindow(#Window_0, 450, 200, 395, 352, "DataSection", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
EditorGadget(#Editor_1, 25, 15, 350, 315)
*MonTexte = jaPBe_UnpackMemory(?Drawing_pb_Start, @LongueurTexte)
If *MonTexte
SetGadgetText(#Editor_1, PeekS(*MonTexte, LongueurTexte))
FreeMemory(*MonTexte)
EndIf
EndIf
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Select EventWindow()
Case #Window_0
CloseWindow(#Window_0)
Break
EndSelect
EndSelect
ForEver