| | |
How to Enable/Disable Users thro' C++ or any code
![]() |
•
•
•
•
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: 50
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,383
Reputation:
Solved Threads: 112
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 |
anyfile api array based binary bitmap c++ c/c++ char class classes code coding compile console conversion count delete deploy desktop developer directshow dll download draw dynamic dynamiccharacterarray email encryption error file forms fstream function functions game gdi+ givemetehcodez gnu graph gui homeworkhelp homeworkhelper http iamthwee ibm ifstream input int integer java lib linkedlist linker loop looping loops map math matrix memory multiple news node number numbertoword output packing parameter pointer problem program programming project python random read recursion reference rpg string strings temperature template test text text-file tree url variable vector video visualc++ visualizationtoolkit win32 windows winsock word wordfrequency wxwidgets






