Remote modify NT account with VC

zhaozj2021-02-17  49

Remote modify NT account with VC

(Liu Guangji July 16, 2001 16:12) If we establish a separate mail server on Windows NT Server 4.0, the user's user must also be a NT domain user who "log in from the batch job", so The user's mail account password (that is, NT user password) changes, you must log in to NT as an administrator to achieve, very inconvenient. How can I make ordinary mail users to change their account passwords? Below, the author uses VC to write a CGI program to allow normal users to access web pages via browser to remotely modify their personal account information. The HTML source code called the CGI program is as follows:

...

< TD> New Password:
User Name:
password:
Verifying New Communications: < Input name = newpassword2 type = password maxLENGTH = 20> ... This page calls the ChPass.exe CGI program in a POST mode to change the Windows NT user password. Next, let's take a look at the VC source program that implements the remote modification account function. In this program, the user's input is first converted to Unicode form, decoding the parameters of the calling API function. First, a new Win32 console application project CHPASS is newly built in the VC, and part of the code is as follows. :

... void printmimeHeader () {cout <<"content-type: text / html / n / n";} void printhtmlheader () {cout << User password change </ title> </ Head> <body> ";} void printhtmltrailer () {cout <<<</ body> </ html>";} void getpostdata () {// Get a form input from stdin CHAR * PCONTENTLENGTH; int icontentLength; pContentLength = getenv ( "CONTENT_LENGTH"); if (! pContentLength = NULL) iContentLength = atoi (pContentLength) else iContentLength = 0; if (iContentLength> sizeof (szBuffer) -1) iContentLength = sizeof (szBuffer) 1; int i = 0; while (i <icontentLength) {wchar x = fgetwc (stdin); if (x == EOF) Break; szbuffer [i ] = x;} szbuffer [i] = '/ 0';} // Volume URL Coding Decoding Void ProcessData () {Pwchar P; PWchar SEP = (PWCHAR) "&"; user = WCSTOK (SZBuffer, SEP); if (user! = Null) Password = WCSTOK (NULL, SEP); if (PASSWORD! = NULL) NewPassword1 = WCSTOK (NULL, SEP); if (newpassword1! = Null) newpassword2 = WCSTOK (NULL, SEP); P = WCSSTR (user, l "user ="); if (p) WCSCPY (User, P 5 ); else user = null; p = wcsstr (Password, l "password ="); if (p) wcscpy (Password, P 9); E Lse Password = NULL; P = WCSSTR (NewPassword1, L "newpassword1 ="); if (p) WCSCPY (NewPassword1, P 13); else newpassword1 = null; p = wcsstr (newpassword2, l "newpassword2 ="); if (p); if (p) WCSCPY (NewPassword2, P 13); else newpassword2 = null;} // Call the API function Change the password NET_API_STATUS CHANGEPASSWORD () {Return NetuserChangePassword (Null, User, Password, NewPassword1);</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-29392.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="29392" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.038</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'hYa_2FTx5OnNOWKVyvBGuKAdJEdwNUtn_2Fud6GrVpvUpI6CyFTlM1q_2F07N17VSB97GMLi9xq4wbWrV2E3Sn_2FbSc9A_3D_3D'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>