| | |
How to Enable/Disable Users thro' C++ or any code
Please support our C++ advertiser: Intel Parallel Studio Home
![]() |
•
•
•
•
Originally Posted by meabed
http://www.microsoft.com/resources/d..._ovr_Tools.asp
check this link dude ..
Thanks you for u r reply ,
this link is very useful for me.
regards,
Shalin
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
}
}
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
}
}
•
•
Join Date: Mar 2004
Posts: 1,620
Reputation:
Solved Threads: 51
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
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
•
•
•
•
Originally Posted by kc0arf
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
•
•
Join Date: Mar 2008
Posts: 1,400
Reputation:
Solved Threads: 113
You just posted in a 4 year old thread, read THIS before posting again, incase you missed it..
I need pageviews! most fun profile ever :)
![]() |
Similar Threads
- HELP! No Advanced to enable/disable CTRL (Windows NT / 2000 / XP)
Other Threads in the C++ Forum
- Previous Thread: trouble with bools...I think
- Next Thread: Huffman coding help
| Thread Tools | Search this Thread |
api array based beginner binary bitmap c++ c/c++ calculator char char* class code coding compile compiler console conversion count database delete deploy desktop developer dll download dynamic dynamiccharacterarray email encryption error file forms fstream function functions game givemetehcodez google graph gui homeworkhelp homeworkhelper iamthwee ifstream input int integer java lib linkedlist linker list loop looping loops map math memory multiple news node number numbertoword output parameter pointer problem program programming project python random read recursion recursive reference rpg sorting string strings struct temperature template test text text-file tree unix url variable vector video visualstudio win32 windows winsock word wordfrequency wxwidgets






