// Ensuite, je parviens à parcourir la config de mon serveur en utilisant
les
membres de cet objet fpcRoot.
// Sauf ici ou je ne parviens pas à me débrouiller a faire un switch/case à
partir du résultat fourni par une fonction membre d'un des objets.
for (long l=1;l<=fpcDestinationSet->Count;l++)
{
fpcDestination=fpcDestinationSet->Item(_variant_t(l),(BSTR) NULL
,(BSTR) NULL );
switch ( fpcDestination->Type ) //*ICI* ça coince
// On peut aussi utiliser ->GetType() même punition
{
case 0 :
printf ("\t\tDomaine : %-20s \n", (char*)
fpcDestination->DomainName);
break;
case 1 :
printf ("\t\tAdresse IP : %-20s \n", (char*)
fpcDestination->IP_From);
break;
default :
printf ("\t\tDomaine + URL on verra après....");
}
}
----------------------------
J'ai une erreur :
error C2450: switch expression of type 'struct FPCLib::IFPCDestination *' is
illegal Integral expression required
nb : Mon objet destination est bien valide, car si je ne mets que des
destinations de type "domain" dans mon destinationSet, alors je peux les
afficher avec :
printf ("\t\tDomaine : %-20s \n", (char*)
fpcDestination->DomainName);
Sans switch/case pour gerer le type.
Le membre Type d'un objet Destination est défini ici dans le msdn
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/isa/isaobj2_92ex.asp
Et de ce que j'en ai compris, il renvoie une valeur comprise entre 0 et 2
selon le type de l'objet destination.
FpcDestinationAddressType DestType; //undefined type FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans les tlh et tli.
Alni
Bonjour,
Tiens compte éventuellement d'un cas par défaut, ainsi que de break à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui. Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser... Mais s'il vous vient une idée, n'hésitez pas.
Bonjour,
Tiens compte éventuellement d'un cas par défaut, ainsi que de break
à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui.
Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en
C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser...
Mais s'il vous vient une idée, n'hésitez pas.
Tiens compte éventuellement d'un cas par défaut, ainsi que de break à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui. Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser... Mais s'il vous vient une idée, n'hésitez pas.
drkm
"Alni" writes:
Tiens compte éventuellement d'un cas par défaut, ainsi que de break à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui. Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser... Mais s'il vous vient une idée, n'hésitez pas.
As-tu essayé le code que je t'ai donné ? D'après l'URL que tu avais renseignée, ce devrait être bon.
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
"Alni" <nospam@nowhere.com> writes:
Tiens compte éventuellement d'un cas par défaut, ainsi que de break
à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui.
Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en
C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser...
Mais s'il vous vient une idée, n'hésitez pas.
As-tu essayé le code que je t'ai donné ? D'après l'URL que tu avais
renseignée, ce devrait être bon.
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
Tiens compte éventuellement d'un cas par défaut, ainsi que de break à la fin de chaque cas.
Oui, bien sûr...
Remarque, j'aurais pu oublier ce genre de détails, mais pas aujourd'hui. Je ne code pas très souvent, mais je fais quand même 2 ou 3 appli en C/C++ par an depuis 1987.
Bon, enfin merci à tous pour votre aide, je vais encore creuser... Mais s'il vous vient une idée, n'hésitez pas.
As-tu essayé le code que je t'ai donné ? D'après l'URL que tu avais renseignée, ce devrait être bon.
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
drkm
"Alni" writes:
J'y ai bien pensé, mais le compilo refuse :
FpcDestinationAddressType DestType; //undefined type FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ; ^^^^
?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
"Alni" <nospam@nowhere.com> writes:
J'y ai bien pensé, mais le compilo refuse :
FpcDestinationAddressType DestType; //undefined type
FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans
les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ;
^^^^
?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
FpcDestinationAddressType DestType; //undefined type FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ; ^^^^
?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
Alni
Bonjour,
"Alni" writes:
J'y ai bien pensé, mais le compilo refuse :
FpcDestinationAddressType DestType; //undefined type FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ;
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs fonctionne correctement, la variable type étant bien chargée avec la bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ; fpcDestination->get_Type( &type ); switch (type) .../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ; Type=fpcDestination->Type;
error C2556: 'GetType' : overloaded functions only differ by return type error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser. J'ai d'ailleurs dans mon code des :
for (long l=1;l<=fpcDestinationSet->Count;l++)
Qui passent très bien sans être obligé de recourir à l'appel de la fonction interne get_Count pour charger la variable. HRESULT get_Count( long *plCount ); http://msdn.microsoft.com/library/default.asp?url=/library/en-us/isa/isaobj2_9o6c.asp
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime pas trop passer par des artifices...
Bonjour,
"Alni" <nospam@nowhere.com> writes:
J'y ai bien pensé, mais le compilo refuse :
FpcDestinationAddressType DestType; //undefined type
FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans
les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ;
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs
fonctionne correctement, la variable type étant bien chargée avec la
bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ;
fpcDestination->get_Type( &type );
switch (type)
.../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ;
Type=fpcDestination->Type;
error C2556: 'GetType' : overloaded functions only differ by return type
error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser.
J'ai d'ailleurs dans mon code des :
for (long l=1;l<=fpcDestinationSet->Count;l++)
Qui passent très bien sans être obligé de recourir à l'appel de la
fonction interne get_Count pour charger la variable.
HRESULT get_Count(
long *plCount
);
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/isa/isaobj2_9o6c.asp
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime
pas trop passer par des artifices...
FpcDestinationAddressType DestType; //undefined type FpcDestinationAddressType
Bien que, comme je l'ai mentionné plus haut, ce type est présent dans les tlh et tli.
Et avec :
enum FpcDestinationAddressType type ;
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs fonctionne correctement, la variable type étant bien chargée avec la bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ; fpcDestination->get_Type( &type ); switch (type) .../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ; Type=fpcDestination->Type;
error C2556: 'GetType' : overloaded functions only differ by return type error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser. J'ai d'ailleurs dans mon code des :
for (long l=1;l<=fpcDestinationSet->Count;l++)
Qui passent très bien sans être obligé de recourir à l'appel de la fonction interne get_Count pour charger la variable. HRESULT get_Count( long *plCount ); http://msdn.microsoft.com/library/default.asp?url=/library/en-us/isa/isaobj2_9o6c.asp
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime pas trop passer par des artifices...
drkm
"Alni" writes:
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs fonctionne correctement, la variable type étant bien chargée avec la bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ; fpcDestination->get_Type( &type ); switch (type) .../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ; Type=fpcDestination->Type; ^^^
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une majuscule, et à la déclaration une minuscule.
error C2556: 'GetType' : overloaded functions only differ by return type error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser.
Si tu veux utiliser les properties (c'est bien cela ?) de Visual C++, alors tu dois te renseigner auprès d'utilisateurs de ce compilo. Ici, on ne connait pas.
[...]
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime pas trop passer par des artifices...
Un appel de fonction membre, un artifice ?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
"Alni" <nospam@nowhere.com> writes:
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs
fonctionne correctement, la variable type étant bien chargée avec la
bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ;
fpcDestination->get_Type( &type );
switch (type)
.../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ;
Type=fpcDestination->Type;
^^^
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une
majuscule, et à la déclaration une minuscule.
error C2556: 'GetType' : overloaded functions only differ by return type
error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser.
Si tu veux utiliser les properties (c'est bien cela ?) de Visual
C++, alors tu dois te renseigner auprès d'utilisateurs de ce compilo.
Ici, on ne connait pas.
[...]
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime
pas trop passer par des artifices...
Un appel de fonction membre, un artifice ?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
Non, mais.... si j'ajoute FPCLib:: alors ça compile sans erreurs fonctionne correctement, la variable type étant bien chargée avec la bonne valeur selon la destination.
FPCLib::FpcDestinationAddressType type ; fpcDestination->get_Type( &type ); switch (type) .../...
Par contre, le code ci dessous ne passe pas :
FPCLib::FpcDestinationAddressType type ; Type=fpcDestination->Type; ^^^
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une majuscule, et à la déclaration une minuscule.
error C2556: 'GetType' : overloaded functions only differ by return type error C2371: 'GetType' : redefinition; different basic types
Alors que normalement c'est comme ça que l'on devrait l'utiliser.
Si tu veux utiliser les properties (c'est bien cela ?) de Visual C++, alors tu dois te renseigner auprès d'utilisateurs de ce compilo. Ici, on ne connait pas.
[...]
Bon, enfin, j'ai un workaround pour continuer d'avancer, mais je n'aime pas trop passer par des artifices...
Un appel de fonction membre, un artifice ?
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
Alni
Bonjour,
Type=fpcDestination->Type; ^^^
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une majuscule, et à la déclaration une minuscule.
Oui erreur de recopie.
Un appel de fonction membre, un artifice ?
Bah, normalement je devrait pouvoir atteindre tout simplement le membre "Type", sans passer par get_Type() sous la forme fpcDestination->Type, comme je le fais pour atteindre toutes les autres properties.
Mais bon... je commence à me demander si je ne vais pas me mettre au Visual Basic... Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui s'avère être un long, mais qui ne contient pas plus que 255 :)
(valeur utilisée = nb d'éléments % 256)
Bonjour,
Type=fpcDestination->Type;
^^^
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une
majuscule, et à la déclaration une minuscule.
Oui erreur de recopie.
Un appel de fonction membre, un artifice ?
Bah, normalement je devrait pouvoir atteindre tout simplement le membre
"Type", sans passer par get_Type() sous la forme fpcDestination->Type,
comme je le fais pour atteindre toutes les autres properties.
Mais bon... je commence à me demander si je ne vais pas me mettre au
Visual Basic...
Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui
s'avère être un long, mais qui ne contient pas plus que 255 :)
Je ne sais pas si c'est une erreur de recopiage, mais tu as ici une majuscule, et à la déclaration une minuscule.
Oui erreur de recopie.
Un appel de fonction membre, un artifice ?
Bah, normalement je devrait pouvoir atteindre tout simplement le membre "Type", sans passer par get_Type() sous la forme fpcDestination->Type, comme je le fais pour atteindre toutes les autres properties.
Mais bon... je commence à me demander si je ne vais pas me mettre au Visual Basic... Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui s'avère être un long, mais qui ne contient pas plus que 255 :)
(valeur utilisée = nb d'éléments % 256)
drkm
"Alni" writes:
Un appel de fonction membre, un artifice ?
Bah, normalement je devrait pouvoir atteindre tout simplement le membre "Type", sans passer par get_Type() sous la forme fpcDestination->Type, comme je le fais pour atteindre toutes les autres properties.
Mais s'il faut qualifier d'artifice un appel de fonction membre ou l'accès à une « property », en C++, ...
Mais bon... je commence à me demander si je ne vais pas me mettre au Visual Basic...
...
Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui s'avère être un long, mais qui ne contient pas plus que 255 :)
(valeur utilisée = nb d'éléments % 256)
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
"Alni" <nospam@nowhere.com> writes:
Un appel de fonction membre, un artifice ?
Bah, normalement je devrait pouvoir atteindre tout simplement le membre
"Type", sans passer par get_Type() sous la forme fpcDestination->Type,
comme je le fais pour atteindre toutes les autres properties.
Mais s'il faut qualifier d'artifice un appel de fonction membre ou
l'accès à une « property », en C++, ...
Mais bon... je commence à me demander si je ne vais pas me mettre au
Visual Basic...
...
Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui
s'avère être un long, mais qui ne contient pas plus que 255 :)
(valeur utilisée = nb d'éléments % 256)
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
Bah, normalement je devrait pouvoir atteindre tout simplement le membre "Type", sans passer par get_Type() sous la forme fpcDestination->Type, comme je le fais pour atteindre toutes les autres properties.
Mais s'il faut qualifier d'artifice un appel de fonction membre ou l'accès à une « property », en C++, ...
Mais bon... je commence à me demander si je ne vais pas me mettre au Visual Basic...
...
Maintenant, j'ai un pb avec le count (fpcDestinationSet->Count), qui s'avère être un long, mais qui ne contient pas plus que 255 :)
(valeur utilisée = nb d'éléments % 256)
--drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
M. B.
"Alni" a écrit dans le message de news: cds9j1$jss$
Bonjour,
Mais bon... je commence à me demander si je ne vais pas me mettre au Visual Basic...
Pour ma part, je choisirais plutot C# et .NET ...
MB
"Alni" <nospam@nowhere.com> a écrit dans le message de news:
cds9j1$jss$1@news-reader3.wanadoo.fr...
Bonjour,
Mais bon... je commence à me demander si je ne vais pas me mettre au
Visual Basic...