OVH Cloud OVH Cloud

Création MailBox Erreur

5 réponses
Avatar
Alain Rogister
Hello,

j'essaye de cr=E9er une mailbox Echange automatiquement=20
dans mon application.

Voici le code que j'ai tap=E9 :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As String,=20
_
strHomeMDBUrl As=20
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl =3D "CN=3DMailbox Store (MYSTORE),CN=3DFirst=20
Storage Group,
' =20
CN=3DInformationStore,CN=3DMYSTORE,CN=3DServers,
' CN=3DFirst Administrative=20
Group,CN=3DAdministrative Groups,
' CN=3DOrgName,CN=3DMicrosoft=20
Exchange,CN=3DServices,CN=3DConfiguration,
' DC=3Dmysubdomain,DC=3Dexample,DC=3Dcom"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName =3D strFirstName & strLastName
' assumes users are in users container, and not an OU
strContainerName =3D "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,=20
strUserName)

oPerson.FirstName =3D strFirstName
oPerson.LastName =3D strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson =3D New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox =3D oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson =3D Nothing
Set oMailbox =3D Nothing

End Sub



J'ai install=E9 sur le serveur et ma machine, les outils=20
d'administration Exchange pour avoir acc=E8s =E0 la DLL CDO.=20
Mais syst=E9matiquement, j'ai une erreur sur le new CDO que=20
je mets ci-dessous :

Voici le message d'erreur que l'application a retourn=E9 :=20

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

D=E9tails :=20

System.Runtime.InteropServices.COMException=20
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in=20
W:\Inetpub\wwwroot\WEBPHAR\GestionUtilisateurs\Proprietes.
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in=20
W:\Inetpub\wwwroot\WEBPHAR\GestionUtilisateurs\Proprietes.
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in=20
W:\Inetpub\wwwroot\WEBPHAR\GestionUtilisateurs\Proprietes.
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,=20
EventArgs e) in=20
W:\Inetpub\wwwroot\WEBPHAR\GestionUtilisateurs\Proprietes.
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait=20
gentil de me le dire !

Merci

Alain

5 réponses

Avatar
Bonjour,

s'agissant de techno COM je pense que c un manque de privilèges du compte
ASPNET en effet le compte ASPNET est celui qui fait tourner les appli asp
par défaut or il n'a pas le droit d'accéder aux objet com soit vous
reconfigurer le machine.config avec un compte qui a ce droit (attention aux
autres problèmes de sécurité) soit vous donnez les droit en utilisant
dcomcnfg.exe et en paramétrant manuellement le compte aspnet

a lire peut aider

http://www.dotnet-tech.com/tutoriels/rapport-excel/


Sebastien


"Alain Rogister" a écrit dans le
message de news:c00a01c489e0$9a74ec10$
Hello,

j'essaye de créer une mailbox Echange automatiquement
dans mon application.

Voici le code que j'ai tapé :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As String,
_
strHomeMDBUrl As
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl = "CN=Mailbox Store (MYSTORE),CN=First
Storage Group,
'
CN=InformationStore,CN=MYSTORE,CN=Servers,
' CN=First Administrative
Group,CN­ministrative Groups,
' CN=OrgName,CN=Microsoft
Exchange,CN=Services,CN=Configuration,
' DC=mysubdomain,DC=example,DC=com"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName = strFirstName & strLastName
' assumes users are in users container, and not an OU
strContainerName = "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,
strUserName)

oPerson.FirstName = strFirstName
oPerson.LastName = strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson = New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox = oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson = Nothing
Set oMailbox = Nothing

End Sub



J'ai installé sur le serveur et ma machine, les outils
d'administration Exchange pour avoir accès à la DLL CDO.
Mais systématiquement, j'ai une erreur sur le new CDO que
je mets ci-dessous :

Voici le message d'erreur que l'application a retourné :

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

Détails :

System.Runtime.InteropServices.COMException
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes.
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes.
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes.
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,
EventArgs e) in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes.
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait
gentil de me le dire !

Merci

Alain
Avatar
Alain Rogister
Bonjour,

d'abord merci pour la réponse.

Je pense que vous avez raison mais le petit problème que
j'ai, c'est que j'arrive bien à mettre dans mon projet le
composant com CDO (for Echange). Mais pour mettre la
sécurité sur ce composant, je dois voir également ce
composant sur mon serveur avec dcomcnfg.exe.
Malheureusement, je ne vois pas ce composant dans les
DCOM et donc je ne sais pas appliquer de sécurité. J'ai
pourtant bien installé les composants Exchange sur mon
serveur.

Lorsque je regarde sur ma machine de dévelloppement, je
ne les vois pas non plus.

Avez-vous une idée sur la question ?

Merci

Alain
-----Message d'origine-----
Bonjour,

s'agissant de techno COM je pense que c un manque de


privilèges du compte
ASPNET en effet le compte ASPNET est celui qui fait


tourner les appli asp
par défaut or il n'a pas le droit d'accéder aux objet


com soit vous
reconfigurer le machine.config avec un compte qui a ce


droit (attention aux
autres problèmes de sécurité) soit vous donnez les droit


en utilisant
dcomcnfg.exe et en paramétrant manuellement le compte


aspnet

a lire peut aider

http://www.dotnet-tech.com/tutoriels/rapport-excel/


Sebastien


"Alain Rogister" a


écrit dans le
message de news:c00a01c489e0$9a74ec10$
Hello,

j'essaye de créer une mailbox Echange automatiquement
dans mon application.

Voici le code que j'ai tapé :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As String,
_
strHomeMDBUrl As
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl = "CN=Mailbox Store (MYSTORE),CN=First
Storage Group,
'
CN=InformationStore,CN=MYSTORE,CN=Servers,
' CN=First Administrative
Group,CN­ministrative Groups,
' CN=OrgName,CN=Microsoft
Exchange,CN=Services,CN=Configuration,
' DC=mysubdomain,DC=example,DC=com"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName = strFirstName & strLastName
' assumes users are in users container, and not an OU
strContainerName = "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,
strUserName)

oPerson.FirstName = strFirstName
oPerson.LastName = strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson = New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox = oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson = Nothing
Set oMailbox = Nothing

End Sub



J'ai installé sur le serveur et ma machine, les outils
d'administration Exchange pour avoir accès à la DLL CDO.
Mais systématiquement, j'ai une erreur sur le new CDO que
je mets ci-dessous :

Voici le message d'erreur que l'application a retourné :

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

Détails :

System.Runtime.InteropServices.COMException
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,
EventArgs e) in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait
gentil de me le dire !

Merci

Alain


.



Avatar
Bonjour,

que vous puissiez mettre CDO dans votre projet ne me surprend pas dans
visual studio vous utilisez votre compte utilisateur personnel (peut être
celui d'administrateur ou avec des privilèges d'admin) toujours est il que
votre compte est moins limité que celui d'asp.net (si asp.net est celui
configuré sur votre machine.config)

Cela dit une autre question à résoudre êtes vous sur d'avoir créé un compte
Exchange pour l'utilisateur ASP.Net je m'explique quand vous développez vous
utilisez votre compte habituel qui a surement un profil Exchange donc ça ne
pose pas de problème mais quand vous lancez l'application ASP elle utilise
ASPNET qui lui n'a surement pas de profil Exchange il faudrait utiliser le
compte de la personne logué ou définir un compte dans le web.config
(recherche impersonnation sur msdn pour cela) . Il se peut que se soit cela
aussi qui lève l'exception com après tout cette exception veut juste dire
que le composant com a eu un problème et ça peu être un refus d'ouverture de
compte.

Autre question à résoudre êtes vous sur que les services nécessaire à CDO
sont bien activé sur votre serveur?

pour ce qui est de trouver CDO dans dcomcnfg.exe malheureusement je
nepourrais pas beaucoup vous aider j'ai désinstallé il y a longtemp exchange
(trop lourd et trop buggé à mon sens mais c'est certainement que je ne sais
pas bien l'utiliser) et pour faire ce que vous voulez faire j'utilise les
classe smtpmail du framework.net.

Sebastien


"Alain Rogister" a écrit dans le
message de news:c9e601c48a7e$9257da80$
Bonjour,

d'abord merci pour la réponse.

Je pense que vous avez raison mais le petit problème que
j'ai, c'est que j'arrive bien à mettre dans mon projet le
composant com CDO (for Echange). Mais pour mettre la
sécurité sur ce composant, je dois voir également ce
composant sur mon serveur avec dcomcnfg.exe.
Malheureusement, je ne vois pas ce composant dans les
DCOM et donc je ne sais pas appliquer de sécurité. J'ai
pourtant bien installé les composants Exchange sur mon
serveur.

Lorsque je regarde sur ma machine de dévelloppement, je
ne les vois pas non plus.

Avez-vous une idée sur la question ?

Merci

Alain
-----Message d'origine-----
Bonjour,

s'agissant de techno COM je pense que c un manque de


privilèges du compte
ASPNET en effet le compte ASPNET est celui qui fait


tourner les appli asp
par défaut or il n'a pas le droit d'accéder aux objet


com soit vous
reconfigurer le machine.config avec un compte qui a ce


droit (attention aux
autres problèmes de sécurité) soit vous donnez les droit


en utilisant
dcomcnfg.exe et en paramétrant manuellement le compte


aspnet

a lire peut aider

http://www.dotnet-tech.com/tutoriels/rapport-excel/


Sebastien


"Alain Rogister" a


écrit dans le
message de news:c00a01c489e0$9a74ec10$
Hello,

j'essaye de créer une mailbox Echange automatiquement
dans mon application.

Voici le code que j'ai tapé :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As String,
_
strHomeMDBUrl As
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl = "CN=Mailbox Store (MYSTORE),CN=First
Storage Group,
'
CN=InformationStore,CN=MYSTORE,CN=Servers,
' CN=First Administrative
Group,CN­ministrative Groups,
' CN=OrgName,CN=Microsoft
Exchange,CN=Services,CN=Configuration,
' DC=mysubdomain,DC=example,DC=com"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName = strFirstName & strLastName
' assumes users are in users container, and not an OU
strContainerName = "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,
strUserName)

oPerson.FirstName = strFirstName
oPerson.LastName = strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson = New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox = oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson = Nothing
Set oMailbox = Nothing

End Sub



J'ai installé sur le serveur et ma machine, les outils
d'administration Exchange pour avoir accès à la DLL CDO.
Mais systématiquement, j'ai une erreur sur le new CDO que
je mets ci-dessous :

Voici le message d'erreur que l'application a retourné :

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

Détails :

System.Runtime.InteropServices.COMException
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,
EventArgs e) in
W:InetpubwwwrootWEBPHARGestionUtilisateursProprietes


.
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait
gentil de me le dire !

Merci

Alain


.



Avatar
Alain Rogister
C'est bien un problème de droit car lorsque je crée une
simple application VB, cela fonctionne ! Enfin, je n'ai
plus de problèmes de blocage. Maintenant, les exemples
que j'ai pour simplement créer un utilisateur dans
l'active directory et ensuite une boite mail sont très
confus et je n'y arrive pas pour le moment !

Vous m'étonnez lorsque vous dites que vous utilisez
smtpmail du framework car cette classe ne sert qu'à
envoyer des emails à ma connaissance, pas à créer un
utilisateur ou une boite mail ?




-----Message d'origine-----
Bonjour,

que vous puissiez mettre CDO dans votre projet ne me


surprend pas dans
visual studio vous utilisez votre compte utilisateur


personnel (peut être
celui d'administrateur ou avec des privilèges d'admin)


toujours est il que
votre compte est moins limité que celui d'asp.net (si


asp.net est celui
configuré sur votre machine.config)

Cela dit une autre question à résoudre êtes vous sur


d'avoir créé un compte
Exchange pour l'utilisateur ASP.Net je m'explique quand


vous développez vous
utilisez votre compte habituel qui a surement un profil


Exchange donc ça ne
pose pas de problème mais quand vous lancez


l'application ASP elle utilise
ASPNET qui lui n'a surement pas de profil Exchange il


faudrait utiliser le
compte de la personne logué ou définir un compte dans le


web.config
(recherche impersonnation sur msdn pour cela) . Il se


peut que se soit cela
aussi qui lève l'exception com après tout cette


exception veut juste dire
que le composant com a eu un problème et ça peu être un


refus d'ouverture de
compte.

Autre question à résoudre êtes vous sur que les services


nécessaire à CDO
sont bien activé sur votre serveur?

pour ce qui est de trouver CDO dans dcomcnfg.exe


malheureusement je
nepourrais pas beaucoup vous aider j'ai désinstallé il y


a longtemp exchange
(trop lourd et trop buggé à mon sens mais c'est


certainement que je ne sais
pas bien l'utiliser) et pour faire ce que vous voulez


faire j'utilise les
classe smtpmail du framework.net.

Sebastien


"Alain Rogister" a


écrit dans le
message de news:c9e601c48a7e$9257da80$
Bonjour,

d'abord merci pour la réponse.

Je pense que vous avez raison mais le petit problème que
j'ai, c'est que j'arrive bien à mettre dans mon projet le
composant com CDO (for Echange). Mais pour mettre la
sécurité sur ce composant, je dois voir également ce
composant sur mon serveur avec dcomcnfg.exe.
Malheureusement, je ne vois pas ce composant dans les
DCOM et donc je ne sais pas appliquer de sécurité. J'ai
pourtant bien installé les composants Exchange sur mon
serveur.

Lorsque je regarde sur ma machine de dévelloppement, je
ne les vois pas non plus.

Avez-vous une idée sur la question ?

Merci

Alain
-----Message d'origine-----
Bonjour,

s'agissant de techno COM je pense que c un manque de


privilèges du compte
ASPNET en effet le compte ASPNET est celui qui fait


tourner les appli asp
par défaut or il n'a pas le droit d'accéder aux objet


com soit vous
reconfigurer le machine.config avec un compte qui a ce


droit (attention aux
autres problèmes de sécurité) soit vous donnez les droit


en utilisant
dcomcnfg.exe et en paramétrant manuellement le compte


aspnet

a lire peut aider

http://www.dotnet-tech.com/tutoriels/rapport-excel/


Sebastien


"Alain Rogister" a


écrit dans le
message de news:c00a01c489e0$9a74ec10




$
Hello,

j'essaye de créer une mailbox Echange automatiquement
dans mon application.

Voici le code que j'ai tapé :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As




String,
_
strHomeMDBUrl As
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl = "CN=Mailbox Store (MYSTORE),CN=First
Storage Group,
'
CN=InformationStore,CN=MYSTORE,CN=Servers,
' CN=First Administrative
Group,CN­ministrative Groups,
' CN=OrgName,CN=Microsoft
Exchange,CN=Services,CN=Configuration,
' DC=mysubdomain,DC=example,DC=com"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName = strFirstName & strLastName
' assumes users are in users container, and not an




OU
strContainerName = "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,
strUserName)

oPerson.FirstName = strFirstName
oPerson.LastName = strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson = New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox = oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson = Nothing
Set oMailbox = Nothing

End Sub



J'ai installé sur le serveur et ma machine, les outils
d'administration Exchange pour avoir accès à la DLL CDO.
Mais systématiquement, j'ai une erreur sur le new CDO




que
je mets ci-dessous :

Voici le message d'erreur que l'application a retourné :

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

Détails :

System.Runtime.InteropServices.COMException
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete




s
..
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete




s
..
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete




s
..
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,
EventArgs e) in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete




s
..
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait
gentil de me le dire !

Merci

Alain


.





.



Avatar
sebastien981_nospam
Effectivement après l'envoi je me suis rendu compte en relisant votre
premier message que ce que vous vouliez c'était créer un mailbox
exchange et non envoyer des mails j'ai donc fait une erreur avec mon
principe du smtpmail, désolé de cette erreur.

Vous dites avoir essayé avec une application winforms VB, je présume
que cela fonctionne si dans l'absolu vous la faite tourner sur le
serveur exchange après vous être loggué sous le compte administrateur
(ou bien depuis un pc distant mais qui a utilisé un compte du serveur
exchange ayant les bons droit). Si effectivement cela a fonctionné
alors le problème est lié au compte utilisateur. Dans ce cas, pour
votre site asp.net, vous avez deux solutions à mon sens :

1 - Activer l'impersonnation dans le fichier web.config cela permettra
à l'application ASP d'utiliser le compte de l'utilisateur loggué il
suffira que cet utilisateur ait les bons droits sur Exchange

<identity impersonate="true"/> dans web.config

2 - Créer un compte ayant les droits sur Exchange puis l'utiliser dans
le fichier web.config comme compte d'identification

<identity impersonate="true" userName="domainecompte" password="mot de
passe"/> toujours dans web.config

Sinon encore une fois navré de mon amalgame entre le fait d'envoyer des
mail et le fait de créer une mailbox exchange

Sebastien

Alain Rogister a couché sur son écran :
C'est bien un problème de droit car lorsque je crée une
simple application VB, cela fonctionne ! Enfin, je n'ai
plus de problèmes de blocage. Maintenant, les exemples
que j'ai pour simplement créer un utilisateur dans
l'active directory et ensuite une boite mail sont très
confus et je n'y arrive pas pour le moment !

Vous m'étonnez lorsque vous dites que vous utilisez
smtpmail du framework car cette classe ne sert qu'à
envoyer des emails à ma connaissance, pas à créer un
utilisateur ou une boite mail ?




-----Message d'origine-----
Bonjour,

que vous puissiez mettre CDO dans votre projet ne me surprend pas dans
visual studio vous utilisez votre compte utilisateur personnel (peut être
celui d'administrateur ou avec des privilèges d'admin) toujours est il que
votre compte est moins limité que celui d'asp.net (si asp.net est celui
configuré sur votre machine.config)

Cela dit une autre question à résoudre êtes vous sur d'avoir créé un compte
Exchange pour l'utilisateur ASP.Net je m'explique quand vous développez
vous utilisez votre compte habituel qui a surement un profil Exchange donc
ça ne pose pas de problème mais quand vous lancez l'application ASP elle
utilise ASPNET qui lui n'a surement pas de profil Exchange il faudrait
utiliser le compte de la personne logué ou définir un compte dans le
web.config (recherche impersonnation sur msdn pour cela) . Il se peut que
se soit cela aussi qui lève l'exception com après tout cette exception veut
juste dire que le composant com a eu un problème et ça peu être un refus
d'ouverture de compte.

Autre question à résoudre êtes vous sur que les services nécessaire à CDO
sont bien activé sur votre serveur?

pour ce qui est de trouver CDO dans dcomcnfg.exe malheureusement je
nepourrais pas beaucoup vous aider j'ai désinstallé il y a longtemp
exchange (trop lourd et trop buggé à mon sens mais c'est certainement que
je ne sais pas bien l'utiliser) et pour faire ce que vous voulez faire
j'utilise les classe smtpmail du framework.net.

Sebastien


"Alain Rogister" a écrit dans le
message de news:c9e601c48a7e$9257da80$
Bonjour,

d'abord merci pour la réponse.

Je pense que vous avez raison mais le petit problème que
j'ai, c'est que j'arrive bien à mettre dans mon projet le
composant com CDO (for Echange). Mais pour mettre la
sécurité sur ce composant, je dois voir également ce
composant sur mon serveur avec dcomcnfg.exe.
Malheureusement, je ne vois pas ce composant dans les
DCOM et donc je ne sais pas appliquer de sécurité. J'ai
pourtant bien installé les composants Exchange sur mon
serveur.

Lorsque je regarde sur ma machine de dévelloppement, je
ne les vois pas non plus.

Avez-vous une idée sur la question ?

Merci

Alain
-----Message d'origine-----
Bonjour,

s'agissant de techno COM je pense que c un manque de privilèges du compte
ASPNET en effet le compte ASPNET est celui qui fait tourner les appli asp
par défaut or il n'a pas le droit d'accéder aux objet com soit vous
reconfigurer le machine.config avec un compte qui a ce droit (attention aux
autres problèmes de sécurité) soit vous donnez les droit en utilisant
dcomcnfg.exe et en paramétrant manuellement le compte aspnet

a lire peut aider

http://www.dotnet-tech.com/tutoriels/rapport-excel/


Sebastien


"Alain Rogister" a écrit dans le
message de news:c00a01c489e0$9a74ec10 $
Hello,

j'essaye de créer une mailbox Echange automatiquement
dans mon application.

Voici le code que j'ai tapé :

Sub CreateMailboxCDOPerson(strFirstName As String, _
strLastName As String,
_
strHomeMDBUrl As
String)
'strHomeMDBUrl should look like this
'strHomeMDBUrl = "CN=Mailbox Store (MYSTORE),CN=First
Storage Group,
'
CN=InformationStore,CN=MYSTORE,CN=Servers,
' CN=First Administrative
Group,CN­ministrative Groups,
' CN=OrgName,CN=Microsoft
Exchange,CN=Services,CN=Configuration,
' DC=mysubdomain,DC=example,DC=com"

Dim oPerson As New CDO.Person
Dim oMailbox As CDOEXM.IMailboxStore
Dim strUserName As String
Dim strURL As String
Dim strContainerName As String

strUserName = strFirstName & strLastName
' assumes users are in users container, and not an OU
strContainerName = "Users"
' Create URL for the user
CreateUserURL(strURL, strContainerName, False,
strUserName)

oPerson.FirstName = strFirstName
oPerson.LastName = strLastName

oPerson.DataSource.SaveTo strURL

Set oPerson = New CDO.Person
' Bind
oPerson.DataSource.Open strURL

' Create Mailbox
Set oMailbox = oPerson
oMailbox.CreateMailbox strHomeMDBUrl

' Save
oPerson.DataSource.Save

'CleanUp
Set oPerson = Nothing
Set oMailbox = Nothing

End Sub



J'ai installé sur le serveur et ma machine, les outils
d'administration Exchange pour avoir accès à la DLL CDO.
Mais systématiquement, j'ai une erreur sur le new CDO que
je mets ci-dessous :

Voici le message d'erreur que l'application a retourné :

URL : http://w2ks-
dev/WEBPHAR/GestionUtilisateurs/Proprietes.aspx

Détails :

System.Runtime.InteropServices.COMException
(0x80040154): ?
at WEBPHAR.Proprietes.CreateMailBoxCDO() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete s ..
aspx.vb:line 763
at WEBPHAR.Proprietes.Creation() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete s ..
aspx.vb:line 745
at WEBPHAR.Proprietes.btCreer_Click() in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete s ..
aspx.vb:line 326
at WEBPHAR.Proprietes.Page_Load(Object sender,
EventArgs e) in
W:InetpubwwwrootWEBPHARGestionUtilisateursPropriete s ..
aspx.vb:line 263
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain()

Si quelqu'un sait pourquoi j'ai cette erreur, ce serait
gentil de me le dire !

Merci

Alain


.





.





--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com