2009-06-04 13 views
2

J'essaie d'utiliser mstscax.dll (Microsoft Remote Desktop Control) pour me connecter à une machine Vista nécessitant une authentification au niveau du réseau.Utilisation du contrôle RDP pour vous connecter à une machine Vista nécessitant une authentification au niveau du réseau

J'ai joué avec toutes les méthodes dans IMsRdpClientNonScriptable4, IMsRdpClientAdvancedSettings4 et IMsRdpClient6. Il y a une série de fonctions qui semblent permettre cela.

  • enablecredsspsupport
  • PromptForCredentials
  • PromptForCredsOnClient
  • NegotiateSecurityLayer

Malheureusement, la documentation MSDN est pratacily inutile et je ne trouve pas d'exemples pour ces sur le web. Je sais que c'est possible parce qu'un produit appelé "Royal TS" peut se connecter de cette façon. Un indice est que "Royal TS" et Vista Remote Desktop créent une invite d'autorisation qui ressemble à celle de CredUIPromptForWindowsCredentials, ce qui me fait croire que je pourrais utiliser une telle fonction pour obtenir les informations d'identification, puis utilisez éventuellement PublisherCertificateChain pour en informer RDP.

Des idées seraient utiles.

Répondre

3

Donc, si d'autres personnes trouvent cela:

Tout ce qui doit être fait est enablecredsspsupport = true, le problème que j'avais été que je chargeais le mstscax.dll manuellement et la version que j'utilisais pris en charge l'interface IMsRdpClientNonScriptable4 mais n'a tout simplement pas fonctionné. Si vous chargez simplement le contrôle normalement, la définition de EnableCredSspSupport = true fonctionne correctement.

+0

Merci! J'ai regardé cela pendant environ une heure et cela m'a sauvé probabbly encore quelques heures. –

0

Je ne l'ai jamais essayé de faire ce que vous faites, mais je vous suggère de jeter un oeil à l'article suivant:

Multi Remote Desktop Client .NET

Les projets utilisent mstscax.dll.