Affichier un calendrier exchange 2003 sur page asp

cs_spardo Messages postés 8 Date d'inscription samedi 31 janvier 2004 Statut Membre Dernière intervention 9 août 2007 - 9 août 2007 à 11:29
zuff Messages postés 79 Date d'inscription lundi 28 octobre 2002 Statut Membre Dernière intervention 21 octobre 2008 - 10 août 2007 à 09:25
Pour mon job on m'a demandé de chercher à rendre certains calendriers
accessibles sur le net depuis une page .asp dans le genre OWA. Je suis
débutante. D'habitude je ne touche pas à ce genre de travail.


Nous utilisons Windows sbs 2003 et exchange 2003.
Est-ce que quelqu'un pourrait m'aider ou me donner une piste sur la manière de se connecter à Exchange depuis une page ASP?

Merci infiniment pour votre aide!

1 réponse

zuff Messages postés 79 Date d'inscription lundi 28 octobre 2002 Statut Membre Dernière intervention 21 octobre 2008
10 août 2007 à 09:25
D'abords bonne chance,

J'avais commencer par cette fonction :



Public



Function
Search(

ByVal
Requete

As



String
)

As
XmlDataDocument




' Variables








Dim
Request

As
System.Net.HttpWebRequest


Dim
Response

As
System.Net.HttpWebResponse


' Dim Autorisation As System.Net.CredentialCache






Dim
bytes()

As



Byte






Dim
RequestStream

As
System.IO.Stream


Dim
ResponseStream

As
System.IO.Stream


Dim
ResponseXmlDoc

As



New
XmlDataDocument


' Autorisation d'accès






'Autorisation = New System.Net.CredentialCache






'Autorisation.Add(New System.Uri(URLServeurExchange), "NTLM", New System.Net.NetworkCredential(UserExchange, MotDePasseExchange, DomaineExchange))






'Request = CType(System.Net.WebRequest.Create(URLServeurExchange), System.Net.HttpWebRequest)






'Request.Credentials = Autorisation

Request = System.Net.HttpWebRequest.Create(URLServeurExchange)







Dim
Autorisation

As



New
System.Net.NetworkCredential(UserExchange, MotDePasseExchange, DomaineExchange)Request.Credentials = Autorisation


Dim
myProxy

As



New
System.Net.WebProxy(

"http://111.1111.1.111:9090"
)myProxy.Credentials =


New
System.Net.NetworkCredential(UserExchange, MotDePasseExchange, DomaineExchange)Request.Proxy = myProxy








'Header

Request.ContentType =




"text/xml"

Request.Method =




"SEARCH"

bytes = System.Text.Encoding.UTF8.GetBytes(Requete)


Request.ContentLength = bytes.Length


RequestStream = Request.GetRequestStream()


RequestStream.Write(bytes, 0, bytes.Length)


RequestStream.Close()


Request.Headers.Add(




"Translate"
,

"F"
)


Dim
str

As



Object
= Request.GetResponse()


'Envoi du SEARCH

Response =




CType
(Request.GetResponse(), System.Net.HttpWebResponse)


'Réponse

ResponseStream = Response.GetResponseStream()


ResponseXmlDoc.Load(ResponseStream)







'Fin de connexion

ResponseStream.Close()


Response.Close()







Return
ResponseXmlDoc


End



Function

Mais j'ai du abandonner cette piste car pour atteindre le serveur exchange je passais par un proxy (ca peux marcher chez toi si ton reseaux est moins complexe que chez moi).

Sinon, il tu peux utiliser Interop.MSXML2.dll

Dim oXMLHttp
As MSXML2.XMLHTTP30 =
New MSXML2.XMLHTTP30()

Dim sUrl
As
String

Dim sQuery
As
String

' TODO: Replace with your folder URL.sUrl =

"http://ServeurExchange/public/RESERVATION/"

' Open the folder.oXMLHttp.open(

"SEARCH", sUrl,
False,
UserExchange
,
MotDePasseExchange
)

' Set up the query.sQuery =

"<?xml version='1.0'?>" & _

"<g:searchrequest xmlns:g='DAV:'>" & _

"<g:sql>SELECT ""DAV:displayname"" " & _

"FROM SCOPE('SHALLOW TRAVERSAL OF """ & sUrl &
"""')"

' TODO: Make DAV:isfolder = true if you want to retrieve subfolders,
' and make DAV:isfolder false to retrieve items.sQuery sQuery &

" WHERE ""DAV:isfolder"" = true" & _

"</g:sql>" & _

"</g:searchrequest>"

' Set up request headers.oXMLHttp.setRequestHeader(

"Content-Type",
"text/xml")oXMLHttp.setRequestHeader(

"Translate",
"f")oXMLHttp.setRequestHeader(

"Depth",
"0")oXMLHttp.setRequestHeader(

"Content-Length",
"" & sQuery.Length)

' Send the query.oXMLHttp.send(sQuery)

Dim

fichierTexte AsString = oXMLHttp.responseText

Je ne peux pas t'aider plus car ce projet est pour l'instant en stand-by.
0
Rejoignez-nous