Hi All,

I want to enable/disable users who logged in Domain Name Server (DNS).
Through VC++ code.
If anyone has idea regarding this please reply me asap.

Thanks in advance for u r reply.

Regards,
Shalin.

Re: How to Enable/Disable Users thro' C++ or any code 80 80
Re: How to Enable/Disable Users thro' C++ or any code 80 80
Re: How to Enable/Disable Users thro' C++ or any code 80 80

np dude ;)

Re: How to Enable/Disable Users thro' C++ or any code 80 80

Hi all,

Finaly I got the answer & here is the code in VC++.
Please Insert the ACTIVEDS.LIB & ADSIID.LIB files in your project.

Regards
Shashi Pawar.
//================= CODE =======================

#include "stdafx.h"
#include "ActiveDir.h"
#include "Activeds.h"
#include <comdef.h>
#include <Iads.h>
#include <Adshlp.h>


int main()
{

HRESULT hr = S_OK;
IADsContainer *pCont = NULL;
CoInitialize(NULL);

hr = ADsGetObject(L"WinNT://DOMAIN_NAME/COMP_NAME",
IID_IADsContainer, (void**) &pCont );
//Put your domain name & computer name.



if ( !SUCCEEDED(hr) ) 

{
   return hr;
}

_variant_t var;
IEnumVARIANTPtr pEnum; 
ADsBuildEnumerator (pCont,&pEnum);
int cnt=0;
ULONG ulFetched = 0L;

_variant_t vChild;
while((SUCCEEDED(ADsEnumerateNext(pEnum, 1, &vChild, &ulFetched)) && ulFetched==1)) 
{

IADsUser *pADs = NULL;
HRESULT hr = S_OK;


hr = V_DISPATCH(&vChild)->QueryInterface(IID_IADsUser, (void**)&pADs);
if(hr!=S_OK)
   break;

BSTR bstrName; 
pADs->get_Name(&bstrName);//stores the Usernames in a string.
CString csName=bstrName;

SysFreeString(bstrName);
printf("%s\n",csName);

if (csName == "User_Name")//put username here
hr = pADs ->put_AccountDisabled(VARIANT_FALSE);//TRUE for disable FALSE for enable the account.
        hr = pADs ->SetInfo (); //To commit the operation
        exit(0);

}

pADs->Release();//IADs user list
pCont->Release ();//free the objects container
}

}
Re: How to Enable/Disable Users thro' C++ or any code 80 80

Hello,

Great on the code!

Just wanted to clarify that no one logs in through DNS. DNS (Domain Naming Service) is a "yellow pages" of information concerning servers and computers on the internet, or in a private network. DNS maps the name www.apple.com to 17.x.y.z You will not receive a login prompt from a DNS server.

What you are talking about here is Active Directory, a pure Microsoft Thing. While hooks are becoming available for Mac and Linux to login to Active Directory, it is mainly a Windoze operation.

Code looks great though! I wonder if it would work from a linux box, assuming that the other libraries are available.

Christian

Re: How to Enable/Disable Users thro' C++ or any code 80 80

Hello,

Great on the code!

Just wanted to clarify that no one logs in through DNS. DNS (Domain Naming Service) is a "yellow pages" of information concerning servers and computers on the internet, or in a private network. DNS maps the name www.apple.com to 17.x.y.z You will not receive a login prompt from a DNS server.

What you are talking about here is Active Directory, a pure Microsoft Thing. While hooks are becoming available for Mac and Linux to login to Active Directory, it is mainly a Windoze operation.

Code looks great though! I wonder if it would work from a linux box, assuming that the other libraries are available.

Christian

hi,
U r right, it is for active directory users a pure windows thing,
I didnt tried such thing on linux, may be their are some libraries available.

Regards,
Shalin

Re: How to Enable/Disable Users thro' C++ or any code 80 80

Very, Good! This is help me/

Re: How to Enable/Disable Users thro' C++ or any code 80 80

You just posted in a 4 year old thread, read THIS before posting again, incase you missed it..

Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.19 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.