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 AsStringDim sQuery AsString' 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.