Article View: borland.public.cppbuilder.nativeapi
Article #17105Re: I need another solution
From: Fernando
Date: Wed, 09 Apr 2003 12:53
Date: Wed, 09 Apr 2003 12:53
116 lines
4669 bytes
4669 bytes
Thank you. I will try it tonight. I will try to create a local group. Thank
you very much. A very useful information.
"Vladimir Afanasyev" <avv@systema.kiev.ua> escribi� en el mensaje
news:3e93f0ca$1@newsgroups.borland.com...
>
> Hi,
>
> "Fernando" <ferjat@terra.es> wrote:
> >Thank you, but SVC it?s not free and I only want to create an user
account.
> >I would like to use API of Windows. Is it possible?. Thanks
> >
> >
> >"Eugene Mayevski" <mayevski@eldos.org> escribio en el mensaje
> >news:3e9312bb@newsgroups.borland.com...
> >> Fernando Alvarez wrote:
> >> > Hi
> >> >
> >> > How I create an user account in Windows 2000/XP? And a group? I
haven�t
> >> > found any information. Thanks!!
> >>
>
> It is very easy for Windows Script:
>
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/ScriptCen
ter/user/ScrUG92.asp
>
> The similar code for C++ Builder:
>
>
> #include <objbase.h>
>
> void __fastcall TForm1::Button1Click(TObject *Sender)
> {
> //The IBindCtx interface provides access to a bind context, which is an
object
> //that stores information about a particular moniker binding operation.
> IBindCtx *pbindctx;
>
> //The IMoniker interface is used for naming COM objects. An object that
> //implements IMoniker is called a "moniker," which is a name that uniquely
> //identifies a COM object.
> IMoniker *pmoniker;
>
> //Using later binding by moniker I will obtain pointer to dispatch
interface
> IDispatch *dispServ;
> ULONG ul;
>
> //Creates a bind context.
> //A bind context is an object that stores information about a particular
> //moniker-binding operation:
> HRESULT hresult=::CreateBindCtx(0,&pbindctx);
> if(hresult != S_OK)
> {
> ShowMessage("CreateBindCtx error");
> pbindctx->Release();
> Application->Terminate();
> }
>
> //Converts a string into a moniker that identifies the object named by the
string.
> //It's moniker for current computer: (//.)
> hresult = ::MkParseDisplayName(pbindctx,
L"WinNT://.,computer",&ul,&pmoniker);
> if(hresult != S_OK)
> {
> ShowMessage("Sure, next time will be better.");
> pbindctx->Release();
> pmoniker->Release();
> Application->Terminate();
> }
>
> //"Binds" the moniker; that is, returns a pointer to the object identified
by the moniker.
> //The binding process involves finding the object, getting it into the
running
> //state if it's not already, and acquiring an interface pointer to it.
> //See carefully - I "get" Dispatch interface just for later binding
>
hresult=pmoniker->BindToObject(pbindctx,NULL,IID_IDispatch,(void**)&dispServ
);
> if(hresult != S_OK)
> {
> ShowMessage("They are still not here, bad day");
> pbindctx->Release();
> pmoniker->Release();
> dispServ->Release();
> Application->Terminate();
> }
> //Creating record for user ItsMe
> Variant PCUser=((Variant)dispServ).Exec(Function("Create") << "user" <<
"ItsMe");
> //setting password for user ItsMe
> PCUser.Exec(Function("SetPassword") << "ABCd1924");
> //Apply it:
> PCUser.Exec(Function("SetInfo"));
> }
>
> It is create account for user ItsMe with password ABCd1924.
> For further information see:
> Microsoft Script Center:
>
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/scriptcen
ter/default.asp
>
> You can see also how to use monikers for WMI in C++
> Builder in my samples:
> Let us try WMI (samples)
> http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=19443
>
> Vladimir.
>
Technical Details
Message-ID:
<3e9417b1$1@newsgroups.borland.com>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!news.maxwell.syr.edu!newsfeed.wirehub.nl!news.kweb.on.ca!KWeb!newsgroups.borland.com!not-for-mailReferences:
<3e930242@newsgroups.borland.com> <3e9312bb@newsgroups.borland.com> <3e9347ad@newsgroups.borland.com> <3e93f0ca$1@newsgroups.borland.com>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII X-Google-Thread: 10cc67,7078ae0ac1caa636 X-Google-Attributes: gid10cc67,public X-Google-ArrivalTime: 2003-04-09 06:00:03 PST From: "Fernando" <ferjat@terra.es> Newsgroups: borland.public.cppbuilder.nativeapi References: <3e930242@newsgroups.borland.com> <3e9312bb@newsgroups.borland.com> <3e9347ad@newsgroups.borland.com> <3e93f0ca$1@newsgroups.borland.com> Subject: Re: I need another solution Date: Wed, 9 Apr 2003 14:53:06 +0200 Lines: 118 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 NNTP-Posting-Host: 81.203.10.85 Message-ID: <3e9417b1$1@newsgroups.borland.com> X-Trace: newsgroups.borland.com 1049892785 81.203.10.85 (9 Apr 2003 05:53:05 -0800) Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!news.maxwell.syr.edu!newsfeed.wirehub.nl!news.kweb.on.ca!KWeb!newsgroups.borland.com!not-for-mail