需要用VB编写一个函数
通过传入用户名,密码,域来通过NTLM验证
我在网上查了NetworkCredential类好象有类似的方法,但是不知道该方法的返回值是什么?怎么判断是否通过了NTLM验证?
另外如果是用NetworkCredential类的话,好象VB不自带的希望各为大虾提供下思路或者方法,有帮助都给分
中心思想是:用VB写,而且解决NTLM验证的域帐户登陆谢谢~~~~~

解决方案 »

  1.   

    VC是怎么样的?VC写好了之后能用VB调用吗?怎么调用?
      

  2.   


    windows 下ntlm验证(401)vc代码实现(集成域帐号认证),主要在代理与sql注入扫描时做代理2009-06-01 22:42////目前90%以上的数据库注入或者其他web扫描工具都不支持域认证
    #include "stdlib.h"
    #include "stdio.h"
    #include "atlhttp.h"
    class AuthData:public IAuthInfo
    {
    public:
     char pass[32];
     char user[32];
     char domain[32];
     AuthData(char *p,char *u,char *d){strcpy(pass,p);strcpy(user,u);strcpy(domain,d);}
     HRESULT GetPassword(__out_ecount_part_z_opt(*pdwBuffSize, *pdwBuffSize) LPTSTR szPwd, __inout DWORD *pdwBuffSize)
     {
      strcpy(szPwd,pass);
      *pdwBuffSize = strlen(pass);
      return 0; }
     HRESULT GetUsername(__out_ecount_part_z_opt(*pdwBuffSize, *pdwBuffSize) LPTSTR szUid, __inout DWORD *pdwBuffSize)
     {
      strcpy(szUid,user);
      *pdwBuffSize =strlen(user);
      return 0; }
     HRESULT GetDomain(__out_ecount_part_z_opt(*pdwBuffSize, *pdwBuffSize) LPTSTR szDomain, __inout DWORD *pdwBuffSize)
     {
      strcpy(szDomain,domain);
      *pdwBuffSize =strlen(szDomain);
      return 0;
     }};
    void main()
    {
     CAtlHttpClient * client;
     CAtlNavigateData navData;
     client = new CAtlHttpClient;
     CNTLMAuthObject ntlmAuth;
     AuthData auth_data("pass@","user","domain");
     client->AddAuthObj( _T("NTLM"), &ntlmAuth,&auth_data );
     if (client->Navigate("http://210.2.101.174/sec.ASPX", &navData )) { }
     delete client;}
     
      

  3.   

    有没有.net的方法?VB能否调用.NET写出来的东西?
    最终我是希望能在VB中实现这个功能
      

  4.   

    VB可以调用.NET的DLL,把VB.NET的DLL的类声明为COM类就可以
      

  5.   

    能提供下.net的例子的吗?
    我写的:
    System.Net.CredentialCache MyCredentialCache = new System.Net.CredentialCache();
                    MyCredentialCache.Add(new System.Uri("http://intranet2.csmc.com.cn"), "NTLM", new System.Net.NetworkCredential(username, password, "csmc"));但是不知道如何判断验证成功,谢谢帮忙
      

  6.   

    继续UP一下
    有没有.net或VB的例子 
    再次感谢3楼 
    实在没有的话我就把分给你
      

  7.   

    感谢aspower_
    我已经找到.net解决的方法 谢谢