Bonjour/soir,
J'aime placer mes routines communes dans une DLL. Je
voudrais y placer une fonction qui récupère les informations de la table de
ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur 326.
Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine
standard qui récupère les informations de la table de ressources et qui
n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen?
Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines
communes?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
François Picalausa
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au programme principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$
Bonjour/soir, J'aime placer mes routines communes dans une DLL. Je voudrais y placer une fonction qui récupère les informations de la table
de
ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur
326.
Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine standard qui récupère les informations de la table de ressources et qui n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines communes?
Merci d'avance André
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au programme
principal (au travers d'une propriété ou d'un événement).
Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer
tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que
tu ajoutes dans le dossier templates sous le dossier d'installation de VB.
Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors
proposés.
"André Joubert" <jaji92@sympatico.ca> a écrit dans le message de
news:xKl2c.20800$qA2.1547935@news20.bellglobal.com...
Bonjour/soir,
J'aime placer mes routines communes dans une DLL. Je
voudrais y placer une fonction qui récupère les informations de la table
de
ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur
326.
Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine
standard qui récupère les informations de la table de ressources et qui
n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen?
Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines
communes?
une solution est de demander un objet décrivant tes ressources au programme principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$
Bonjour/soir, J'aime placer mes routines communes dans une DLL. Je voudrais y placer une fonction qui récupère les informations de la table
de
ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur
326.
Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine standard qui récupère les informations de la table de ressources et qui n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines communes?
Merci d'avance André
André Joubert
Merci, J'ai essayé la première solution avec un objet et je n'ai pas réussi. J'ai crû que ce n'était pas possible. Je vais m'y remettre, j'ai dû me tromper à quelque part. J'avais la solution du fichier .INI en réserve comme dernière solution.
Merci aussi de me diriger vers les templates, je ne caonnaissais pas André
"François Picalausa" wrote in message news:
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au
programme
principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$ > Bonjour/soir, > J'aime placer mes routines communes dans une DLL. Je > voudrais y placer une fonction qui récupère les informations de la
table
de > ressources du programme principal (le EXE). > > Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur 326. > Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine > standard qui récupère les informations de la table de ressources et qui > n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? > Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines > communes? > > Merci d'avance > André > >
Merci,
J'ai essayé la première solution avec un objet et je n'ai pas
réussi. J'ai crû que ce n'était pas possible. Je vais m'y remettre, j'ai dû
me tromper à quelque part. J'avais la solution du fichier .INI en réserve
comme dernière solution.
Merci aussi de me diriger vers les templates, je ne caonnaissais
pas
André
"François Picalausa" <fpicalausa@chez.com> wrote in message
news:Ob3bwD5AEHA.3436@tk2msftngp13.phx.gbl...
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au
programme
principal (au travers d'une propriété ou d'un événement).
Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer
tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que
tu ajoutes dans le dossier templates sous le dossier d'installation de VB.
Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors
proposés.
"André Joubert" <jaji92@sympatico.ca> a écrit dans le message de
news:xKl2c.20800$qA2.1547935@news20.bellglobal.com...
> Bonjour/soir,
> J'aime placer mes routines communes dans une DLL. Je
> voudrais y placer une fonction qui récupère les informations de la
table
de
> ressources du programme principal (le EXE).
>
> Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur
326.
> Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine
> standard qui récupère les informations de la table de ressources et qui
> n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen?
> Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines
> communes?
>
> Merci d'avance
> André
>
>
Merci, J'ai essayé la première solution avec un objet et je n'ai pas réussi. J'ai crû que ce n'était pas possible. Je vais m'y remettre, j'ai dû me tromper à quelque part. J'avais la solution du fichier .INI en réserve comme dernière solution.
Merci aussi de me diriger vers les templates, je ne caonnaissais pas André
"François Picalausa" wrote in message news:
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au
programme
principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$ > Bonjour/soir, > J'aime placer mes routines communes dans une DLL. Je > voudrais y placer une fonction qui récupère les informations de la
table
de > ressources du programme principal (le EXE). > > Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur 326. > Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine > standard qui récupère les informations de la table de ressources et qui > n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? > Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines > communes? > > Merci d'avance > André > >
François Picalausa
Bonjour/soir,
essaye ceci: Crée deux nouveau projets, un standard Exe et un activeX dll dans le projet standard exe, référence le projet dll activeX
Dans le projet activex: Dans class1 (créé par défaut): Option Explicit
Private mRes As IRessourceMgr
Public Property Set Ressources(NewResManager As IRessourceMgr) Set mRes = NewResManager End Property
Public Sub Init() MsgBox mRes.GetResString(0) End Sub
Toujours dans le projet activeX, tu ajoute une classe IRessourceMgr: Option Explicit
Public Function GetResString(Id As Long) As String
End Function
Dans l'exe standard: Un nouveau module de classe RessourceMgr: Option Explicit
Implements IRessourceMgr
Private Function IRessourceMgr_GetResString(Id As Long) As String IRessourceMgr_GetResString = "Hello" End Function
Dans form1: Option Explicit
Private Sub Form_Load() Dim a As New Class1 Set a.Ressources = New RessourceMgr a.Init End Sub
L'activex dll affiche Hello dans une msgbox. Il faut remplacer dans le module de classe RessourceMgr par une procédure de lecture des ressources et le tour est joué.
"André Joubert" a écrit dans le message de news:d1n2c.20917$
Merci, J'ai essayé la première solution avec un objet et je n'ai pas réussi. J'ai crû que ce n'était pas possible. Je vais m'y remettre, j'ai dû me tromper à quelque part. J'avais la solution du fichier .INI en réserve comme dernière solution.
Merci aussi de me diriger vers les templates, je ne caonnaissais pas André
"François Picalausa" wrote in message news:
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au programme principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$
Bonjour/soir, J'aime placer mes routines communes dans une DLL. Je voudrais y placer une fonction qui récupère les informations de la table de ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur 326. Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine standard qui récupère les informations de la table de ressources et qui n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines communes?
Merci d'avance André
Bonjour/soir,
essaye ceci:
Crée deux nouveau projets, un standard Exe et un activeX dll
dans le projet standard exe, référence le projet dll activeX
Dans le projet activex:
Dans class1 (créé par défaut):
Option Explicit
Private mRes As IRessourceMgr
Public Property Set Ressources(NewResManager As IRessourceMgr)
Set mRes = NewResManager
End Property
Public Sub Init()
MsgBox mRes.GetResString(0)
End Sub
Toujours dans le projet activeX, tu ajoute une classe IRessourceMgr:
Option Explicit
Public Function GetResString(Id As Long) As String
End Function
Dans l'exe standard:
Un nouveau module de classe RessourceMgr:
Option Explicit
Implements IRessourceMgr
Private Function IRessourceMgr_GetResString(Id As Long) As String
IRessourceMgr_GetResString = "Hello"
End Function
Dans form1:
Option Explicit
Private Sub Form_Load()
Dim a As New Class1
Set a.Ressources = New RessourceMgr
a.Init
End Sub
L'activex dll affiche Hello dans une msgbox.
Il faut remplacer dans le module de classe RessourceMgr par une procédure de
lecture des ressources et le tour est joué.
"André Joubert" <jaji92@sympatico.ca> a écrit dans le message de
news:d1n2c.20917$qA2.1573619@news20.bellglobal.com
Merci,
J'ai essayé la première solution avec un objet et je n'ai
pas réussi. J'ai crû que ce n'était pas possible. Je vais m'y
remettre, j'ai dû me tromper à quelque part. J'avais la solution du
fichier .INI en réserve comme dernière solution.
Merci aussi de me diriger vers les templates, je ne
caonnaissais pas
André
"François Picalausa" <fpicalausa@chez.com> wrote in message
news:Ob3bwD5AEHA.3436@tk2msftngp13.phx.gbl...
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au
programme principal (au travers d'une propriété ou d'un événement).
Une autre possibilité est d'utiliser des fichiers XML ou INI pour
stoquer tes ressources.
Pour des routines communes, tu peux créer une série de
classes/modules que tu ajoutes dans le dossier templates sous le
dossier d'installation de VB. Lorsque que tu fera nouvelle
classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" <jaji92@sympatico.ca> a écrit dans le message de
news:xKl2c.20800$qA2.1547935@news20.bellglobal.com...
Bonjour/soir,
J'aime placer mes routines communes dans une
DLL. Je voudrais y placer une fonction qui récupère les
informations de la table de ressources du programme principal (le
EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu
erreur 326. Y aurait-il une façon d'obtenir ce que je veux,
c'est-à-dire une routine standard qui récupère les informations de
la table de ressources et qui n'est pas compilée dans le EXE, mais
bien dans une DLL ou autre moyen? Peut-être qu'il y a autre chose
que les DLLs pour conserver mes routines communes?
essaye ceci: Crée deux nouveau projets, un standard Exe et un activeX dll dans le projet standard exe, référence le projet dll activeX
Dans le projet activex: Dans class1 (créé par défaut): Option Explicit
Private mRes As IRessourceMgr
Public Property Set Ressources(NewResManager As IRessourceMgr) Set mRes = NewResManager End Property
Public Sub Init() MsgBox mRes.GetResString(0) End Sub
Toujours dans le projet activeX, tu ajoute une classe IRessourceMgr: Option Explicit
Public Function GetResString(Id As Long) As String
End Function
Dans l'exe standard: Un nouveau module de classe RessourceMgr: Option Explicit
Implements IRessourceMgr
Private Function IRessourceMgr_GetResString(Id As Long) As String IRessourceMgr_GetResString = "Hello" End Function
Dans form1: Option Explicit
Private Sub Form_Load() Dim a As New Class1 Set a.Ressources = New RessourceMgr a.Init End Sub
L'activex dll affiche Hello dans une msgbox. Il faut remplacer dans le module de classe RessourceMgr par une procédure de lecture des ressources et le tour est joué.
"André Joubert" a écrit dans le message de news:d1n2c.20917$
Merci, J'ai essayé la première solution avec un objet et je n'ai pas réussi. J'ai crû que ce n'était pas possible. Je vais m'y remettre, j'ai dû me tromper à quelque part. J'avais la solution du fichier .INI en réserve comme dernière solution.
Merci aussi de me diriger vers les templates, je ne caonnaissais pas André
"François Picalausa" wrote in message news:
Bonjour/soir,
une solution est de demander un objet décrivant tes ressources au programme principal (au travers d'une propriété ou d'un événement). Une autre possibilité est d'utiliser des fichiers XML ou INI pour stoquer tes ressources.
Pour des routines communes, tu peux créer une série de classes/modules que tu ajoutes dans le dossier templates sous le dossier d'installation de VB. Lorsque que tu fera nouvelle classe/nouvea module, ceux ci te seront alors proposés.
"André Joubert" a écrit dans le message de news:xKl2c.20800$
Bonjour/soir, J'aime placer mes routines communes dans une DLL. Je voudrais y placer une fonction qui récupère les informations de la table de ressources du programme principal (le EXE).
Est-ce possible? Selon mes tests, il semble que non! J'ai obtenu erreur 326. Y aurait-il une façon d'obtenir ce que je veux, c'est-à-dire une routine standard qui récupère les informations de la table de ressources et qui n'est pas compilée dans le EXE, mais bien dans une DLL ou autre moyen? Peut-être qu'il y a autre chose que les DLLs pour conserver mes routines communes?