Bonjour,
je dois faire appel à deux composants COM dans une Page ASP.NET.
Le fonctionnement est le suivant:
MonComLib.maClass a =
HttpContext.Current.Server.CreateObject("MA.Siganture") as
MonComLib.maClass;
// Cette ligne est OK l'object fonctionne...
// c'est ici que cela ce complique.
MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
MonDeuxiemeComLib.maSecondeClass;
// est la KO
en ASP sa marchais... (c'est peut-etre lier au type variant...)
Qq 1 a une idée?
Pour Info extrait de l'idl:
HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
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
Thomas Marencic [MS]
Bonjour,
peut-on avoir le détail de l'erreur?
Cordialement. Thomas MARENCIC
"Matthieu STAELEN" wrote in message news:
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Bonjour,
peut-on avoir le détail de l'erreur?
Cordialement.
Thomas MARENCIC
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> wrote in message
news:OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
Bonjour,
je dois faire appel à deux composants COM dans une Page ASP.NET.
Le fonctionnement est le suivant:
MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as
MonComLib.maClass;
// Cette ligne est OK l'object fonctionne...
// c'est ici que cela ce complique.
MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
MonDeuxiemeComLib.maSecondeClass;
// est la KO
en ASP sa marchais... (c'est peut-etre lier au type variant...)
Qq 1 a une idée?
Pour Info extrait de l'idl:
HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Matthieu STAELEN
Message : Le cast spécifié n'est pas valide COMPlusException : e0434f4d
vous voulez d'autre valeurs?
"Thomas Marencic [MS]" a écrit dans le message de news: Ox8ci#
Bonjour,
peut-on avoir le détail de l'erreur?
Cordialement. Thomas MARENCIC
"Matthieu STAELEN" wrote in message news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Message : Le cast spécifié n'est pas valide
COMPlusException : e0434f4d
vous voulez d'autre valeurs?
"Thomas Marencic [MS]" <thomaren@online.microsoft.com> a écrit dans le
message de news: Ox8ci#lxEHA.1956@TK2MSFTNGP14.phx.gbl...
Bonjour,
peut-on avoir le détail de l'erreur?
Cordialement.
Thomas MARENCIC
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> wrote in message
news:OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
> Bonjour,
> je dois faire appel à deux composants COM dans une Page ASP.NET.
> Le fonctionnement est le suivant:
> MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as
> MonComLib.maClass;
> // Cette ligne est OK l'object fonctionne...
> // c'est ici que cela ce complique.
> MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
> MonDeuxiemeComLib.maSecondeClass;
> // est la KO
> en ASP sa marchais... (c'est peut-etre lier au type variant...)
> Qq 1 a une idée?
>
> Pour Info extrait de l'idl:
> HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
>
>
>
>
Message : Le cast spécifié n'est pas valide COMPlusException : e0434f4d
vous voulez d'autre valeurs?
"Thomas Marencic [MS]" a écrit dans le message de news: Ox8ci#
Bonjour,
peut-on avoir le détail de l'erreur?
Cordialement. Thomas MARENCIC
"Matthieu STAELEN" wrote in message news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Frederic Melantois
Bonjour,
Si vous faîtes appel à des composants COM dans votre page ASP.NET, Vous devez vous mettre en mode STA
directive de page : aspcompat=true
Plus de précisions ici : http://fr.gotdotnet.com/quickstart/aspplus/doc/cominterop.aspx
n'hésitez pas à utiliser l'utilitaire tlbimp.exe, c'est très pratique : http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cptools/html/cpgrftypelibraryimportertlbimpexe.asp
Frédéric Mélantois
"Matthieu STAELEN" a écrit dans le message de news:
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Bonjour,
Si vous faîtes appel à des composants COM dans votre page ASP.NET, Vous
devez vous mettre en mode STA
directive de page : aspcompat=true
Plus de précisions ici :
http://fr.gotdotnet.com/quickstart/aspplus/doc/cominterop.aspx
n'hésitez pas à utiliser l'utilitaire tlbimp.exe, c'est très pratique :
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cptools/html/cpgrftypelibraryimportertlbimpexe.asp
Frédéric Mélantois
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message de
news:OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
Bonjour,
je dois faire appel à deux composants COM dans une Page ASP.NET.
Le fonctionnement est le suivant:
MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as
MonComLib.maClass;
// Cette ligne est OK l'object fonctionne...
// c'est ici que cela ce complique.
MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
MonDeuxiemeComLib.maSecondeClass;
// est la KO
en ASP sa marchais... (c'est peut-etre lier au type variant...)
Qq 1 a une idée?
Pour Info extrait de l'idl:
HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Si vous faîtes appel à des composants COM dans votre page ASP.NET, Vous devez vous mettre en mode STA
directive de page : aspcompat=true
Plus de précisions ici : http://fr.gotdotnet.com/quickstart/aspplus/doc/cominterop.aspx
n'hésitez pas à utiliser l'utilitaire tlbimp.exe, c'est très pratique : http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cptools/html/cpgrftypelibraryimportertlbimpexe.asp
Frédéric Mélantois
"Matthieu STAELEN" a écrit dans le message de news:
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Matthieu STAELEN
Oui, je l'avais deja fait... et pour la generation de l'assemblie j'utilise VS.NET
"Frederic Melantois" a écrit dans le message de news: cmqi3h$rrm$
Bonjour,
Si vous faîtes appel à des composants COM dans votre page ASP.NET, Vous devez vous mettre en mode STA
directive de page : aspcompat=true
Plus de précisions ici : http://fr.gotdotnet.com/quickstart/aspplus/doc/cominterop.aspx
n'hésitez pas à utiliser l'utilitaire tlbimp.exe, c'est très pratique :
"Matthieu STAELEN" a écrit dans le message de news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Oui, je l'avais deja fait... et pour la generation de l'assemblie j'utilise
VS.NET
"Frederic Melantois" <fmelantois@nospam.nospam> a écrit dans le message de
news: cmqi3h$rrm$1@s5.feed.news.oleane.net...
Bonjour,
Si vous faîtes appel à des composants COM dans votre page ASP.NET, Vous
devez vous mettre en mode STA
directive de page : aspcompat=true
Plus de précisions ici :
http://fr.gotdotnet.com/quickstart/aspplus/doc/cominterop.aspx
n'hésitez pas à utiliser l'utilitaire tlbimp.exe, c'est très pratique :
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message de
news:OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
> Bonjour,
> je dois faire appel à deux composants COM dans une Page ASP.NET.
> Le fonctionnement est le suivant:
> MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as
> MonComLib.maClass;
> // Cette ligne est OK l'object fonctionne...
> // c'est ici que cela ce complique.
> MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
> MonDeuxiemeComLib.maSecondeClass;
> // est la KO
> en ASP sa marchais... (c'est peut-etre lier au type variant...)
> Qq 1 a une idée?
>
> Pour Info extrait de l'idl:
> HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
>
>
>
>
"Matthieu STAELEN" a écrit dans le message de news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Eric Vernié [MS]
Bonjour Mathieu,
Va faire un tour du coté de la classe System.Runtime.InteropServices.Marshal tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu utilises l'interface IDispatch
exemple : essai un truc du style CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)> object
A+
Eric Vernié Microsoft France
"Matthieu STAELEN" a écrit dans le message de news:
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Bonjour Mathieu,
Va faire un tour du coté de la classe
System.Runtime.InteropServices.Marshal
tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu utilises
l'interface IDispatch
exemple : essai un truc du style
CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)>
object
A+
Eric Vernié
Microsoft France
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message de
news: OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
Bonjour,
je dois faire appel à deux composants COM dans une Page ASP.NET.
Le fonctionnement est le suivant:
MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as
MonComLib.maClass;
// Cette ligne est OK l'object fonctionne...
// c'est ici que cela ce complique.
MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
MonDeuxiemeComLib.maSecondeClass;
// est la KO
en ASP sa marchais... (c'est peut-etre lier au type variant...)
Qq 1 a une idée?
Pour Info extrait de l'idl:
HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Va faire un tour du coté de la classe System.Runtime.InteropServices.Marshal tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu utilises l'interface IDispatch
exemple : essai un truc du style CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)> object
A+
Eric Vernié Microsoft France
"Matthieu STAELEN" a écrit dans le message de news:
Bonjour, je dois faire appel à deux composants COM dans une Page ASP.NET. Le fonctionnement est le suivant: MonComLib.maClass a > HttpContext.Current.Server.CreateObject("MA.Siganture") as MonComLib.maClass; // Cette ligne est OK l'object fonctionne... // c'est ici que cela ce complique. MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as MonDeuxiemeComLib.maSecondeClass; // est la KO en ASP sa marchais... (c'est peut-etre lier au type variant...) Qq 1 a une idée?
Pour Info extrait de l'idl: HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
Matthieu STAELEN
Merci pour ton aide, .... mais
[MarshalAs(UnmanagedType.IUnknown)] public MonDeuxiemeComLib.maSecondeClass b; private void function() { MonComLib.maClass a; a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1") as MonComLib.maClass ; b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ; // b à une valeur indefinie... }
J'ai oublié qq'chose?
"Eric Vernié [MS]" a écrit dans le message de news:
Bonjour Mathieu,
Va faire un tour du coté de la classe System.Runtime.InteropServices.Marshal tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu
utilises
l'interface IDispatch
exemple : essai un truc du style CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)> object
A+
Eric Vernié Microsoft France
"Matthieu STAELEN" a écrit dans le message de news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Merci pour ton aide, .... mais
[MarshalAs(UnmanagedType.IUnknown)] public MonDeuxiemeComLib.maSecondeClass
b;
private void function()
{
MonComLib.maClass a;
a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1")
as MonComLib.maClass ;
b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ;
// b à une valeur indefinie...
}
J'ai oublié qq'chose?
"Eric Vernié [MS]" <ericv@online.microsoft.com> a écrit dans le message de
news: eZtxLdwxEHA.3976@TK2MSFTNGP09.phx.gbl...
Bonjour Mathieu,
Va faire un tour du coté de la classe
System.Runtime.InteropServices.Marshal
tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu
utilises
l'interface IDispatch
exemple : essai un truc du style
CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)>
object
A+
Eric Vernié
Microsoft France
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message de
news: OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
> Bonjour,
> je dois faire appel à deux composants COM dans une Page ASP.NET.
> Le fonctionnement est le suivant:
> MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as
> MonComLib.maClass;
> // Cette ligne est OK l'object fonctionne...
> // c'est ici que cela ce complique.
> MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
> MonDeuxiemeComLib.maSecondeClass;
> // est la KO
> en ASP sa marchais... (c'est peut-etre lier au type variant...)
> Qq 1 a une idée?
>
> Pour Info extrait de l'idl:
> HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
>
>
>
>
[MarshalAs(UnmanagedType.IUnknown)] public MonDeuxiemeComLib.maSecondeClass b; private void function() { MonComLib.maClass a; a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1") as MonComLib.maClass ; b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ; // b à une valeur indefinie... }
J'ai oublié qq'chose?
"Eric Vernié [MS]" a écrit dans le message de news:
Bonjour Mathieu,
Va faire un tour du coté de la classe System.Runtime.InteropServices.Marshal tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu
utilises
l'interface IDispatch
exemple : essai un truc du style CreeObjet(byval progid as string) As <MarshalAs(UnmanagedType.IDispatch)> object
A+
Eric Vernié Microsoft France
"Matthieu STAELEN" a écrit dans le message de news: > Bonjour, > je dois faire appel à deux composants COM dans une Page ASP.NET. > Le fonctionnement est le suivant: > MonComLib.maClass a > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > MonComLib.maClass; > // Cette ligne est OK l'object fonctionne... > // c'est ici que cela ce complique. > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > MonDeuxiemeComLib.maSecondeClass; > // est la KO > en ASP sa marchais... (c'est peut-etre lier au type variant...) > Qq 1 a une idée? > > Pour Info extrait de l'idl: > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > >
Matthieu STAELEN
C'est OK! grâce au MarshalAs... l'exemple ci dessous fonctionne qd on même la bonne interface.... Merci à tous.
"Matthieu STAELEN" a écrit dans le message de news:
Merci pour ton aide, .... mais
[MarshalAs(UnmanagedType.IUnknown)] public
MonDeuxiemeComLib.maSecondeClass
b; private void function() { MonComLib.maClass a; a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1") as MonComLib.maClass ; b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ; // b à une valeur indefinie... }
J'ai oublié qq'chose?
"Eric Vernié [MS]" a écrit dans le message de news: > Bonjour Mathieu, > > Va faire un tour du coté de la classe > System.Runtime.InteropServices.Marshal > tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu utilises > l'interface IDispatch > > exemple : essai un truc du style > CreeObjet(byval progid as string) As
<MarshalAs(UnmanagedType.IDispatch)>
> object > > A+ > > Eric Vernié > Microsoft France > > > "Matthieu STAELEN" a écrit dans le message
de
> news: > > Bonjour, > > je dois faire appel à deux composants COM dans une Page ASP.NET. > > Le fonctionnement est le suivant: > > MonComLib.maClass a > > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > > MonComLib.maClass; > > // Cette ligne est OK l'object fonctionne... > > // c'est ici que cela ce complique. > > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > > MonDeuxiemeComLib.maSecondeClass; > > // est la KO > > en ASP sa marchais... (c'est peut-etre lier au type variant...) > > Qq 1 a une idée? > > > > Pour Info extrait de l'idl: > > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > > > > > > > >
C'est OK! grâce au MarshalAs... l'exemple ci dessous fonctionne qd on même
la bonne interface....
Merci à tous.
"Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message de
news: etLBL3yxEHA.2996@TK2MSFTNGP10.phx.gbl...
Merci pour ton aide, .... mais
[MarshalAs(UnmanagedType.IUnknown)] public
MonDeuxiemeComLib.maSecondeClass
b;
private void function()
{
MonComLib.maClass a;
a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1")
as MonComLib.maClass ;
b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ;
// b à une valeur indefinie...
}
J'ai oublié qq'chose?
"Eric Vernié [MS]" <ericv@online.microsoft.com> a écrit dans le message de
news: eZtxLdwxEHA.3976@TK2MSFTNGP09.phx.gbl...
> Bonjour Mathieu,
>
> Va faire un tour du coté de la classe
> System.Runtime.InteropServices.Marshal
> tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu
utilises
> l'interface IDispatch
>
> exemple : essai un truc du style
> CreeObjet(byval progid as string) As
<MarshalAs(UnmanagedType.IDispatch)>
> object
>
> A+
>
> Eric Vernié
> Microsoft France
>
>
> "Matthieu STAELEN" <mstaelen@entales.asupp.fr> a écrit dans le message
de
> news: OZNhmwlxEHA.3120@TK2MSFTNGP12.phx.gbl...
> > Bonjour,
> > je dois faire appel à deux composants COM dans une Page ASP.NET.
> > Le fonctionnement est le suivant:
> > MonComLib.maClass a > > > HttpContext.Current.Server.CreateObject("MA.Siganture") as
> > MonComLib.maClass;
> > // Cette ligne est OK l'object fonctionne...
> > // c'est ici que cela ce complique.
> > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as
> > MonDeuxiemeComLib.maSecondeClass;
> > // est la KO
> > en ASP sa marchais... (c'est peut-etre lier au type variant...)
> > Qq 1 a une idée?
> >
> > Pour Info extrait de l'idl:
> > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj);
> >
> >
> >
> >
>
>
C'est OK! grâce au MarshalAs... l'exemple ci dessous fonctionne qd on même la bonne interface.... Merci à tous.
"Matthieu STAELEN" a écrit dans le message de news:
Merci pour ton aide, .... mais
[MarshalAs(UnmanagedType.IUnknown)] public
MonDeuxiemeComLib.maSecondeClass
b; private void function() { MonComLib.maClass a; a = HttpContext.Current.Server.CreateObject("JSWrap.JSWrap.1") as MonComLib.maClass ; b= a.CreateObject("VST") as MonDeuxiemeComLib.maSecondeClass ; // b à une valeur indefinie... }
J'ai oublié qq'chose?
"Eric Vernié [MS]" a écrit dans le message de news: > Bonjour Mathieu, > > Va faire un tour du coté de la classe > System.Runtime.InteropServices.Marshal > tu trouveras sans doute ton bonheur pour indiquer à ASP.NET que tu utilises > l'interface IDispatch > > exemple : essai un truc du style > CreeObjet(byval progid as string) As
<MarshalAs(UnmanagedType.IDispatch)>
> object > > A+ > > Eric Vernié > Microsoft France > > > "Matthieu STAELEN" a écrit dans le message
de
> news: > > Bonjour, > > je dois faire appel à deux composants COM dans une Page ASP.NET. > > Le fonctionnement est le suivant: > > MonComLib.maClass a > > > HttpContext.Current.Server.CreateObject("MA.Siganture") as > > MonComLib.maClass; > > // Cette ligne est OK l'object fonctionne... > > // c'est ici que cela ce complique. > > MonDeuxiemeComLib.maSecondeClass b = a.CreeObject("TEST") as > > MonDeuxiemeComLib.maSecondeClass; > > // est la KO > > en ASP sa marchais... (c'est peut-etre lier au type variant...) > > Qq 1 a une idée? > > > > Pour Info extrait de l'idl: > > HRESULT CreeObject([in] BSTR monNom, [out, retval] LPDISPATCH *rObj); > > > > > > > > > >