Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

IInséré des images dans un fichier dll

17 réponses
Avatar
vbnet3
Bonjour,
Comment inséré des images dans fichier dll est par la suite je peut accédé a ce fichier et utiliser ces images qui se trouve dans le fichier dll.

7 réponses

1 2
Avatar
Loïc Carrère
antoine vient de nous annoncer :

Encore heureux qu'on puisse mettre des jpg en ressource de DLL !




Comme à dit JM il n'est pas possible de charger une image au format
jpeg à travers la fonction LoadResPicture.

Comme à dit LE TROLL, un solution consiste à ajouter l'image jpeg en
tant que ressource de type CUSTOM. Dès que tu en as besoin tu l'extrais
dans un fichier temporaire puis tu charge l'image avec la fonction
LoadPicture().

Ex:

Dim ptFile As Integer
Dim ImagePath As String
Dim arImageData() As Byte
Dim MyPicture As StdPicture

ImagePath = App.Path & "monimage.jpg"
arImageData = LoadResData(101, "CUSTOM")

ptFile = FreeFile
Open ImagePath For Binary As ptFile
Put ptFile, 1, arImageData
Close ptFile
Erase arImageData

Set MyPicture = LoadPicture(ImagePath)




Loïc

--
http://www.gdpicture.com
Avatar
greg
Loïc Carrère wrote:
antoine vient de nous annoncer :

Encore heureux qu'on puisse mettre des jpg en ressource de DLL !




Comme à dit JM il n'est pas possible de charger une image au format jpeg



Si, avec un stream.

Comme à dit LE TROLL, un solution consiste à ajouter l'image jpeg en
tant que ressource de type CUSTOM. Dès que tu en as besoin tu l'extrais
dans un fichier temporaire puis tu charge l'image avec la fonction
LoadPicture().



C'est du n'importe quoi et vraiment crade.
Un JPEG se loade directement des ressources par Stream + OLE.
Ne jamais passer par un fichier évidemment !
Avatar
LE TROLL
Eh Greg...

Pourquoi ne "jamais passer par un fichier", ça le fait tourner ?

D'autant que le principe du fichier ressource peut s'aborder sous deux
aspects non exclusifs, celui de simplifier l'empaquetage et de restituer
tout lors de l'installation, et celui de pioche permanente...

Et puis y a même plus simple s'il n'y a pas trop d'images, c'est de tout
embarquer sur une form qui reste invisible, parfois on cherche compliqué
quand on peut faire simple (loi du "shadok") !

En plus, selon ce que l'on veut faire, on peut bien évidemment avoir besoin
d'un fichier, par exemple pour le passer à une autre application... alors le
"jamais" c'est dans le style "Fontaine je ne boirai...".

------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"greg" a écrit dans le message de news:
gh4brj$neb$
| Loïc Carrère wrote:
| > antoine vient de nous annoncer :
| >>
| >> Encore heureux qu'on puisse mettre des jpg en ressource de DLL !
| >
| >
| > Comme à dit JM il n'est pas possible de charger une image au format jpeg
|
| Si, avec un stream.
|
| > Comme à dit LE TROLL, un solution consiste à ajouter l'image jpeg en
| > tant que ressource de type CUSTOM. Dès que tu en as besoin tu l'extrais
| > dans un fichier temporaire puis tu charge l'image avec la fonction
| > LoadPicture().
|
| C'est du n'importe quoi et vraiment crade.
| Un JPEG se loade directement des ressources par Stream + OLE.
| Ne jamais passer par un fichier évidemment !
Avatar
jeanmarcnoury
On 2 déc, 23:11, greg wrote:
Loïc Carrère wrote:
> antoine vient de nous annoncer :

>> Encore heureux qu'on puisse mettre des jpg en ressource de DLL !



Hello,

> Comme à dit JM il n'est pas possible de charger une image au format j peg

Si, avec un stream.



C'est du n'importe quoi et vraiment crade.
Un JPEG se loade directement des ressources par Stream + OLE.
Ne jamais passer par un fichier évidemment !



Ca serait sympa de faire profiter le groupe en postant ici un bout de
code qui montre tout ça :-)

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
LE TROLL
Bonjour ô Chef, voici du code :

Pense-bête du fichier ressource ???

fichier ressources . res
------------------------
Permet d'empaqueter:
icônes,
fichiers txt
fichiers sons
images

Et au 1er lancement après l'installation, de les désempacter en les copiant
sur le disque, afin de s'en servir.
L'untilité, et de ne pas avoir à joindre un fichier avec l'empaquetage,
puisque tous tienne dans le fichier de ressources qui est inclut dans l'exe,
ou de servire de pioche...

Fichier.res

Un fichier.RES par application
Mais, pouvant contenir X fichiers txt et autres...

Menu complément + gestionnaire de complément + éditeur de ressources vb6
Cliquer sur l'icone (carré vert)
- donner un nom au fichier .res
- icône = ajouter une ressource personnalisée (custom)
- laisser en français
- choisir le fichier par l'explorateur qui s'ouvre
- Choisir l'id à partir de 100, 101... 1000, 2000...
- Enregistrer.

Faire une table dans le programme s'il y a plusieurs ID = n° unique de la
ressource, car on ne voit plus le nom du fichier ressource, mais "custom"
' res id 100 = photo A
' res id 103 = fichier son
' ...

'au 1er lancement
Dim extrait() As Byte ' extraction ressource
Dim p01a As Long
ChDrive App.Path
ChDir App.Path
extrait = LoadResData(2000, "CUSTOM") ' (2000) = id selon ressource
p01a = FreeFile
Open "Lune_extrait.txt" For Binary As p01a ' sur disque nouveau ou même
nom
Put #p01a, 1, extrait ' va écrire le contenu avec le nom de fic sur
disque
Close p01a
' utilisation normale du fichier.




------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
a écrit dans le message de news:

On 2 déc, 23:11, greg wrote:
Loïc Carrère wrote:
> antoine vient de nous annoncer :

>> Encore heureux qu'on puisse mettre des jpg en ressource de DLL !



Hello,

> Comme à dit JM il n'est pas possible de charger une image au format jpeg

Si, avec un stream.



C'est du n'importe quoi et vraiment crade.
Un JPEG se loade directement des ressources par Stream + OLE.
Ne jamais passer par un fichier évidemment !



Ca serait sympa de faire profiter le groupe en postant ici un bout de
code qui montre tout ça :-)

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
Jean-marc
LE TROLL wrote:
Bonjour ô Chef, voici du code :



Merci :-)

Mais ce que j'aimerais, c'est voir le code de Greg qui semble
être un expert des streams et de l'OLE et tout ça.

C'est gentil de sa part de nous avoir donné l'info (super!) mais
ce serait encore plus sympathique et plus dans l'esprit de ce groupe
de bien vouloir fournir un joli exemple de mise en oeuvre en VB, ou
au pire un lien vers les fonctions à employer, etc. Comme dit l'autre,
c'est au pied du mur qu'on voit le maçon :o)

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
LE TROLL
Ah ben voui, je suis d'accord mon bon chef, je voulais lui demander, et puis
je me suis dit: "après tout je m'en moque, pour ma part je sais comment
faire", alors... à quoi me servirait-il de connaître une troisième méthode ?

Ben, si je n'ai pas trop mal compris, il serait censé récupérer les datas
d'un élément dans le fichier res, directement en tapant au début de ce qu'il
veut, ainsi sur la longueur de la récupe, puis de reconstituer en ram
pour... le faire avaler à un objet prévu à cet effet, mais comment, je ne
sais pas, et puis je m'en moque en fait...

------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Jean-marc" a écrit dans le message de news:
4936ee1a$0$2850$
| LE TROLL wrote:
| > Bonjour ô Chef, voici du code :
|
| Merci :-)
|
| Mais ce que j'aimerais, c'est voir le code de Greg qui semble
| être un expert des streams et de l'OLE et tout ça.
|
| C'est gentil de sa part de nous avoir donné l'info (super!) mais
| ce serait encore plus sympathique et plus dans l'esprit de ce groupe
| de bien vouloir fournir un joli exemple de mise en oeuvre en VB, ou
| au pire un lien vers les fonctions à employer, etc. Comme dit l'autre,
| c'est au pied du mur qu'on voit le maçon :o)
|
| --
| Jean-marc Noury (jean_marc_n2)
| Microsoft MVP - Visual Basic
| FAQ VB: http://faq.vb.free.fr/
| mailto: remove '_no_spam_' ;
|
|
|
|
1 2