Windowsユーザー名をプログラムで変更する方法(APIまたはコマンドラインツールを使用) Windowsユーザーの名前を変更する方法はありますか?一部のWindowsユーザー名をプログラムで変更する(Windowsユーザーの名前を変更)
答えて
ユーザーアカウントのユーザー名は、NetUserSetInfo関数で変更できます。
ユーザー名を変更する場合は、レベル引数を0に設定し、USER_INFO_0構造体を渡します。一度に複数のものを変更したい場合は、別のレベルを使用することができます。私はSystem.DirectoryServices.DirectoryEntryクラスを使用して、Windowsユーザーの名前を変更するにはいくつかの小さな方法を書かれている
#include <Windows.h>
#include <LM.h>
#include <stdio.h>
#pragma comment(lib, "netapi32.lib")
int main(int argc, char ** argv)
{
USER_INFO_0 ui0;
NET_API_STATUS result;
LPWSTR command = GetCommandLineW();
wchar_t newname[21];
while (*command != L'*') command++;
command++;
ui0.usri0_name = newname;
wcscpy_s(newname, _countof(newname), L"decommiss-");
wcscat_s(newname, _countof(newname), command);
result = NetUserSetInfo(NULL, command, 0, (LPBYTE)&ui0, NULL);
printf("%u\n", result);
return result;
}
ありがとうございますが、(lm.h)ファイルは何ですか?私はC++に精通していないからです:) –
申し訳ありませんが、お手伝いできませんが、.NETコードから直接Win32 API関数を呼び出す方法がいくつかサポートされていると思います。 NetUserSetInfo引数とUSER_INFO_0構造体は、MSDNライブラリに記載されています。 NET_API_STATUSは単なる32ビットの符号なし整数です。 –
あなたが内部リソースたくさんの種類key
のこととして、明らかにWindowsシステム上のユーザの名前を変更することはできませんが、方法によって、内部ファイルには影響しません、それのDisplayName
を、変更することができます構造はとても種類がcosmetic
に変更されています。あなたのために、または同じマシン上の他のユーザーが何年にもわたって混乱する可能性が最も高いので、私はそうしないことをお勧めします。あなたがしたい場合でも、ここでは、powershell
スクリプトの例であるべきあなたのための作業:
$CurrentUserName = "Your_Domain_Name/Current_User_Name"
Get-QADUser -SearchRoot $CurrentUserName `
| Set-QADUser -DisplayName "New_User_Name" `
| FT FirstName, LastName, DisplayName, company
この良い例で、より詳細な説明の一見のため:彼らが使用ここ
Change user DisplayName from powershell
注意PowerShell
のための余分なプラグイン。私が何を意味するかを明確にするテーマに関する
EDIT
別のリンク:
Change user name on Windows7 Professional
は、この情報がお役に立てば幸いです。
ありがとう、それは良い答えですが、F2を押すと、ローカルユーザーやグループから変更できるので、ユーザー名をプログラムで変更できると思います! –
大丈夫ですが、変更されません。C:\ Users \ ...のユーザーに添付されたファイルシステム...編集した投稿を確認してください。 – Tigran
これは問題ありません。 私はログイン名を変更する必要があります。明日お試しになります:) –
:
これは私がユーザ名を変更するために正常に使用したコードの単純なビットです。
public bool RenameUser(string oldLoginName, string newLoginName)
{
bool renamed = false;
try
{
using (DirectoryEntry AD = new
DirectoryEntry("WinNT://" + Environment.MachineName + ",computer"))
{
try
{
using (DirectoryEntry NewUser = AD.Children.Find(oldLoginName, "user"))
{
if (NewUser != null)
{
NewUser.Rename(newLoginName);
renamed = true;
}
}
}
catch (Exception ex)
{
//TODO: Log
}
}
}
catch (Exception ex)
{
//TODO: Log
}
return renamed;
}
これは便利な舐めです(WMI、WMICツールを使って名前を変更)http://www.911cd.net/forums//index.php?showtopic=23638 –
ありがとう!私はあなたのコードを ''(var entry = new DirectoryEntry($ "WinNT:// {Environment.MachineName}/{oldLoginName}"))entry.Rename(newLoginName);という目的に使用するように減らしました。完全に! – Maverik
- 1. ユーザー名の変更iSQL plus
- 2. ユーザーの名前変更後のユーザー資格情報の検証
- 3. 水銀変更セットのユーザー名を変更できますか?
- 4. 作成時にプログラムでDrupalユーザー名を変更する
- 5. ユーザー名をメールログインに変更する
- 6. Windowsサブディレクトリ内のファイルの名前を変更するスクリプト
- 7. ワードプレス:ボタンの名前を 'LOGOUT'からユーザーの名前に変更しますか?
- 8. Windowsインストーラでのアプリケーション名の変更
- 9. Windowsドメインのユーザー名
- 10. VS 2010でクラスオブジェクトやWindowsサービスオブジェクトの名前を変更
- 11. Symfony - ユーザーが名前を変更してもログアウトする
- 12. Windows&Mercurialのクラス名の変更ケース
- 13. SSRSレポートの名前変更プログラム
- 14. jazzhubで別名の名前を変更
- 15. フォルダの名前変更コマンドをWindowsエクスプローラに送信
- 16. EmacsW32は、古いWindows短縮ファイル名のバッファの名前を変更します。
- 17. 名前を変更する
- 18. 名前の変更Pythonの一時ファイル
- 19. コマンドプロンプトからのファイルの複製と名前の変更(Windows)
- 20. バルクファイルの名前を変更
- 21. Windowsユーザー名の最大長
- 22. Windowsでユーザーの名前とパスワードを確認する方法は?
- 23. Windowsサービスユーザーをプログラムで変更する
- 24. Windows 2012の名前変更マシンアカウントはありません
- 25. Androidでホームスクリーンアプリのアイコン/名前をプログラムで変更する
- 26. 名前でファイル名を変更
- 27. Xcodeの - の変更会社名とユーザー名
- 28. Windowsフォームプログラムを実行するユーザーを変更する
- 29. Windowsの複数のファイルの名前を変更するコマンドまたはスクリプト
- 30. ファイル名のインクリメンタルな名前の変更
なぜですか?これは典型的な質問です!それについてのリソースはありません! –
なぜこれが下落しましたか? – Tigran
あなたは何を達成しようとしていますか?別のユーザーに一時的にログインしますか? –