comment peut on récupérer et utiliser des ressources stockées dans
les dll systeme ??
par exemple, j'aimerais bien intégrer à mon projet l'AVI 256/1036 qui
est stocké dans shdocvw.dll
comment peut on récupérer et utiliser des ressources stockées dans
les dll systeme ??
par exemple, j'aimerais bien intégrer à mon projet l'AVI 256/1036 qui
est stocké dans shdocvw.dll
comment peut on récupérer et utiliser des ressources stockées dans
les dll systeme ??
par exemple, j'aimerais bien intégrer à mon projet l'AVI 256/1036 qui
est stocké dans shdocvw.dll
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
merci !
effectivement, c'est en plein dedans !
... mais j'ai pas réussi à exploiter le truc ??
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
ce me semble bien au dessus de mes possibilités :-(
n'y aurait il pas moyen, à défaut, de placer l'avi dans un fichier
res, et de l'extraire à la demande ?
(si possible pas en écrivant un fichier temp .... ça, je sais faire
:-)
disons, le charger en mémoire, et l'utiliser direct ?
le lien que tu m'as indiqué en parle, mais j'ai pas tout compris ...
de loin ! lol
merci :-)
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
merci !
effectivement, c'est en plein dedans !
... mais j'ai pas réussi à exploiter le truc ??
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
ce me semble bien au dessus de mes possibilités :-(
n'y aurait il pas moyen, à défaut, de placer l'avi dans un fichier
res, et de l'extraire à la demande ?
(si possible pas en écrivant un fichier temp .... ça, je sais faire
:-)
disons, le charger en mémoire, et l'utiliser direct ?
le lien que tu m'as indiqué en parle, mais j'ai pas tout compris ...
de loin ! lol
merci :-)
Hello,
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
merci !
effectivement, c'est en plein dedans !
... mais j'ai pas réussi à exploiter le truc ??
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
ce me semble bien au dessus de mes possibilités :-(
n'y aurait il pas moyen, à défaut, de placer l'avi dans un fichier
res, et de l'extraire à la demande ?
(si possible pas en écrivant un fichier temp .... ça, je sais faire
:-)
disons, le charger en mémoire, et l'utiliser direct ?
le lien que tu m'as indiqué en parle, mais j'ai pas tout compris ...
de loin ! lol
merci :-)
Bonjour scraper,
peut-être en y accédant d'une autre façon ?
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.
Ce doit très probablement être exploitable en vb...
Bonjour scraper,
peut-être en y accédant d'une autre façon ?
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.
Ce doit très probablement être exploitable en vb...
Bonjour scraper,
peut-être en y accédant d'une autre façon ?
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.
Ce doit très probablement être exploitable en vb...
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.
Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
Par exemple, cette source est accessible via un lien res:
exemple :
<html>
<img dynsrc="res://C:WINDOWSsystem32shdocvw/avi/#256/#1036"
loop="-1"> </html>
Te joueras cette vidéo dans un document html, en l'extrayant
directement de la dll.Il y a un exemple sur la KB:
http://support.microsoft.com/default.aspx?kbid3668
en fait, je voudrais que l'avi joue sur une form que j'ai créée, à un
endroit bien spécifique, et non pas sur une fenêtre séparée ?
C'est exploitable dans un contrôle webbrowser..
Il est aussi possible d'enregistrer la ressource dans un fichier qui sera
joué après.
lpData dans la fiche est un pointeur vers les données
fileSize est la taille de la ressources
Pour récupérer les données on pourrait commencer par redimensionner un
tableau de bytes de la taille de la ressource:
Dim Data() As Byte
Redim Data(fileSize-1)
Ensuite copier les données à partir du pointeur via CopyMemory:
CopyMemory Data(0), ByVal lpData, fileSize
Et quand on a le tableau, on peut l'écrire vers un fichier:
Dim FFN as Integer
Open "c:toto.avi" For Binary As FFN
Put FFN,, Data
Close FFN
ceci à la place du "Call mmioInstallIOProc"
Ce bout de code n'a absolument pas été testé et donc pourrait planter VB
(notament le CopyMemory.. qu'il faut de toutes façons revérifier une
trentaine de fois pour être certain qu'aucune copie vers de la mémoire
exécutable ne soit possible)
Il doit aussi être possible de jouer l'AVI directement dans un contrôle du
type mci, peut être via les API...
Ou peut être via un contrôle de type "animation"
Sur http://ccrp.mvps.org/ un contrôle de ce type est dispo et il "Support
for loading resources from a DLL"... a voir donc ;-)
C'est exploitable dans un contrôle webbrowser..
Il est aussi possible d'enregistrer la ressource dans un fichier qui sera
joué après.
lpData dans la fiche est un pointeur vers les données
fileSize est la taille de la ressources
Pour récupérer les données on pourrait commencer par redimensionner un
tableau de bytes de la taille de la ressource:
Dim Data() As Byte
Redim Data(fileSize-1)
Ensuite copier les données à partir du pointeur via CopyMemory:
CopyMemory Data(0), ByVal lpData, fileSize
Et quand on a le tableau, on peut l'écrire vers un fichier:
Dim FFN as Integer
Open "c:toto.avi" For Binary As FFN
Put FFN,, Data
Close FFN
ceci à la place du "Call mmioInstallIOProc"
Ce bout de code n'a absolument pas été testé et donc pourrait planter VB
(notament le CopyMemory.. qu'il faut de toutes façons revérifier une
trentaine de fois pour être certain qu'aucune copie vers de la mémoire
exécutable ne soit possible)
Il doit aussi être possible de jouer l'AVI directement dans un contrôle du
type mci, peut être via les API...
Ou peut être via un contrôle de type "animation"
Sur http://ccrp.mvps.org/ un contrôle de ce type est dispo et il "Support
for loading resources from a DLL"... a voir donc ;-)
C'est exploitable dans un contrôle webbrowser..
Il est aussi possible d'enregistrer la ressource dans un fichier qui sera
joué après.
lpData dans la fiche est un pointeur vers les données
fileSize est la taille de la ressources
Pour récupérer les données on pourrait commencer par redimensionner un
tableau de bytes de la taille de la ressource:
Dim Data() As Byte
Redim Data(fileSize-1)
Ensuite copier les données à partir du pointeur via CopyMemory:
CopyMemory Data(0), ByVal lpData, fileSize
Et quand on a le tableau, on peut l'écrire vers un fichier:
Dim FFN as Integer
Open "c:toto.avi" For Binary As FFN
Put FFN,, Data
Close FFN
ceci à la place du "Call mmioInstallIOProc"
Ce bout de code n'a absolument pas été testé et donc pourrait planter VB
(notament le CopyMemory.. qu'il faut de toutes façons revérifier une
trentaine de fois pour être certain qu'aucune copie vers de la mémoire
exécutable ne soit possible)
Il doit aussi être possible de jouer l'AVI directement dans un contrôle du
type mci, peut être via les API...
Ou peut être via un contrôle de type "animation"
Sur http://ccrp.mvps.org/ un contrôle de ce type est dispo et il "Support
for loading resources from a DLL"... a voir donc ;-)
Brr...
Le but serait justement d'éviter d'intégrer des resources qui sont
déjà sur la machine du client (windows), en outre, en jouant
l'animation de la dll du système, celle-ci sera toujours 'à jour' si
demain cette animation changeait...
Ce bout de code n'a absolument pas été testé et donc pourrait
planter VB (notament le CopyMemory.. qu'il faut de toutes façons
revérifier une trentaine de fois pour être certain qu'aucune copie
vers de la mémoire exécutable ne soit possible)
C'est cette dernière solution qui a retenu mon attention : simple et
rapide à mettre en place avec le contrôle ocx (76Ko) ccrpAnimation
qui permet tout simplement de jouer l'animation de n'importe quelle
dll.
Soit, dans le cas de scraper :
ccrpAnimation1.AutoSize = True
ccrpAnimation1.BackColor = &H8000000F 'Couleur sommet du bouton
ccrpAnimation1.BorderStyle = aniNone
ccrpAnimation1.BackStyle = aniTransparent 'Pour éviter le fond violet
;-) ccrpAnimation1.OpenAVIResourceFromDLL 256,
"C:WINDOWSsystem32shdocvw.dll" ' 256= ResID de l'animation dans la
dll
Merci François !
Brr...
Le but serait justement d'éviter d'intégrer des resources qui sont
déjà sur la machine du client (windows), en outre, en jouant
l'animation de la dll du système, celle-ci sera toujours 'à jour' si
demain cette animation changeait...
Ce bout de code n'a absolument pas été testé et donc pourrait
planter VB (notament le CopyMemory.. qu'il faut de toutes façons
revérifier une trentaine de fois pour être certain qu'aucune copie
vers de la mémoire exécutable ne soit possible)
C'est cette dernière solution qui a retenu mon attention : simple et
rapide à mettre en place avec le contrôle ocx (76Ko) ccrpAnimation
qui permet tout simplement de jouer l'animation de n'importe quelle
dll.
Soit, dans le cas de scraper :
ccrpAnimation1.AutoSize = True
ccrpAnimation1.BackColor = &H8000000F 'Couleur sommet du bouton
ccrpAnimation1.BorderStyle = aniNone
ccrpAnimation1.BackStyle = aniTransparent 'Pour éviter le fond violet
;-) ccrpAnimation1.OpenAVIResourceFromDLL 256,
"C:WINDOWSsystem32shdocvw.dll" ' 256= ResID de l'animation dans la
dll
Merci François !
Brr...
Le but serait justement d'éviter d'intégrer des resources qui sont
déjà sur la machine du client (windows), en outre, en jouant
l'animation de la dll du système, celle-ci sera toujours 'à jour' si
demain cette animation changeait...
Ce bout de code n'a absolument pas été testé et donc pourrait
planter VB (notament le CopyMemory.. qu'il faut de toutes façons
revérifier une trentaine de fois pour être certain qu'aucune copie
vers de la mémoire exécutable ne soit possible)
C'est cette dernière solution qui a retenu mon attention : simple et
rapide à mettre en place avec le contrôle ocx (76Ko) ccrpAnimation
qui permet tout simplement de jouer l'animation de n'importe quelle
dll.
Soit, dans le cas de scraper :
ccrpAnimation1.AutoSize = True
ccrpAnimation1.BackColor = &H8000000F 'Couleur sommet du bouton
ccrpAnimation1.BorderStyle = aniNone
ccrpAnimation1.BackStyle = aniTransparent 'Pour éviter le fond violet
;-) ccrpAnimation1.OpenAVIResourceFromDLL 256,
"C:WINDOWSsystem32shdocvw.dll" ' 256= ResID de l'animation dans la
dll
Merci François !
entre intégrer un AVI de 10 Ko à un fichier res, et embarquer dans le
projet un ocx de 76 Ko, plus enregistrement, etc ... AMHA y'a pas
photo !
entre intégrer un AVI de 10 Ko à un fichier res, et embarquer dans le
projet un ocx de 76 Ko, plus enregistrement, etc ... AMHA y'a pas
photo !
entre intégrer un AVI de 10 Ko à un fichier res, et embarquer dans le
projet un ocx de 76 Ko, plus enregistrement, etc ... AMHA y'a pas
photo !
Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
Bonjour François Picalausa,Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
<copie>....</copie>
Ca fonctionne impec...
BRAVO !!
Bonjour François Picalausa,
Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
<copie>....</copie>
Ca fonctionne impec...
BRAVO !!
Bonjour François Picalausa,Si tu n'embarque pas ce contrôle, il est possible de se servir
directement de commctl32.dll
Cette dll étant redistribuée avec windows, il y a peu de chances
qu'elle ne soit pas présente sur le système ;-)
Dans ce cas, le code est un rien plus long:
Option Explicit
<copie>....</copie>
Ca fonctionne impec...
BRAVO !!