Windowsドメイン名の取得 – プログラミング – Home

通知
すべてクリア

Windowsドメイン名の取得


ニック
 ニック
(@ニック)
ゲスト
結合: 19年前
投稿: 2
Topic starter  

アドミン権限で実行可能なアプリのインストーラーを、通常のユーザー環境で実行出来
るようなPGを考えています。
ローカルアカウント(Administrator)では成功したのですが、
ドメインアドミニストレーターで実行したい為、ドメイン名を取得したいのですが方法
がわかりません。
ご教授頂けないでしょうか。

int main(int argc, char* argv[])
{
WCHAR cmd[Buffers];
WCHAR user[Buffers];
WCHAR domain[Buffers];
WCHAR pass[Buffers];

// ドメイン名の取得→ここの部分が上手くいきません
CHAR domainname[MAX_COMPUTERNAME_LENGTH + 1];
DWORD Size = MAX_COMPUTERNAME_LENGTH + 1;
BOOL GetComputerNameEX(
COMPUTER_NAME_FORMAT ComputerNameDnsDomain,
LPTSTR domainname,
LPDWORD &SIZE
   );
//printf(%s\n,domainname);

STARTUPINFOW si;
PROCESS_INFORMATION pi;

HMODULE hADVAPI32;

hADVAPI32 = LoadLibrary(ADVAPI32.DLL);
if(hADVAPI32 < (HINSTANCE)HINSTANCE_ERROR)
return(-3);
CreateProcessWithLogonWD = (CREATEPROCESSWITHLOGONWD)
GetProcAddress(hADVAPI32,CreateProcessWithLogonW);
if ( CreateProcessWithLogonWD == NULL )
return(-2);

//UserName,Domain,Program,PassWord
MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,administrator,-
1,user,sizeof user);
MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,domainname,-1,domain,sizeof
domain);
MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,E:\\setup.exe,-
1,cmd,sizeof cmd);
MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,pass,-1,pass,sizeof pass);


引用解決済
トピックタグ
aetos
(@aetos)
Noble Member
結合: 5年前
投稿: 1480
 

それで成功してるんですか?
コンパイルエラーになる気がする。
というか、GetComputerNameEx が呼び出されてません。


返信引用
aaaaa
 aaaaa
(@aaaaa)
ゲスト
結合: 19年前
投稿: 4
 

msi のインストールプログラム作って、サーバーから配布するようにした方がいいんじ
ゃないですか。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました