• 締切済み

コンピュータ名の取得及びログオンIDの取得

アクセスVBAで自分のコンピュータ名を取得したいのですが、解かる方教えてください。 また、VBで、WINDOWSログオンIDを取得する方法を教えてください。

noname#136
noname#136

みんなの回答

  • nyalu
  • ベストアンサー率0% (0/0)
回答No.1

 コンピューター名の取得、ログオンID(=ユーザー名)の取得は、共にWindowsAPIを使用します。通常、アクセスで使用する場合は、モジュールに、VBで利用する場合は、標準モジュールに下記のロジックを追加して、それぞれを呼び出してください。ロジック自体は、アクセスで利用しても、VBで利用しても同じです。 ' 《API》コンピューター名の取得 Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal Buffer As String, Size As Long) As Long ' 《API》ユーザー名の取得 Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long ' ========================================================= ' 関数名:(Function)GetCpuName ' 機 能:コンピューター名を取得する。 ' 引 数:なし ' 戻り値:(String)コンピューター名 ' ========================================================= Public Function GetCpuName() As String Dim buf As String * 255 Dim ret As Long ret = GetComputerName(buf, Len(buf)) GetCpuName = Left(buf, InStr(buf, vbNullChar) - 1) End Function ' ========================================================= ' 関数名:(Function)GetUsrName ' 機 能:ユーザー名を取得する。 ' 引 数:なし ' 戻り値:(String)ユーザー名 ' ========================================================= Public Function GetUsrName() As String Dim buf As String * 255 Dim ret As Long ret = GetUserName(buf, Len(buf)) GetUsrName = Left(buf, InStr(buf, vbNullChar) - 1) End Function  ※ 回答結果は、両方のロジックを1つにまとめてあります。

関連するQ&A

  • VBAでコンピューター名を取得したい

    こんにちは Office2000使ってます ExcelやAccessのVBAで作業しているコンピューター名を 取得し 変数に入れたいのですがどうすればできますか? ご存知の方教えてください VBA初心者です よろしくお願いします

  • Windowsのログオンユーザーを取得するには

    VB.netでプログラムを組んでいるのですが、現在Windowsにログオンしているユーザー名を取得するにはどのような方法がありますでしょうか? よろしくお願いいたします。

  • JavaScriptでWindowsログオンIDを取得したい

    JavaScriptでWindowsログオンIDを取得したいと考えております。 Webのシステムで特定のWindowsログオンIDの場合のみに提供したい機能があるためです。 このWebのシステム自体にはログインという行為はないため、そのユーザIDで判断することができないため、WindowsログオンIDを用いたいと考えいています。 以上、よろしくお願いします。

  • コンピューター名を取得したい

    ExcelのVBAでネットワークのコンピューター名を取得することはできないでしょうか? 知人がAPI関数ならできるかも。と言うのですができるのでしょうか?

  • vbsでログオンサーバ名を取得したい

    vbsでログオンサーバ名を取得したい コマンドプロンプトでは、%LOGONSERVER%でログオンサーバ名が取得できますが、 vbsでログオンサーバ名の取得方法がわかりません。 知っている方がいましたらよろしくお願いします。

  • ログオンユーザ名の取得

    お世話になります。 Windows7Pro ドメイン環境 秀丸エディタのマクロより、現在Windowsにログオンしている ユーザ名を取得したいと考えております。 そこで、マクロから外部コマンド(whoami)を実行したとしても その実行結果をマクロで受け取ることができません。 ※いったん実行結果をiniファイル等に書き込むようにしておき  マクロからそれを読み込む方法はあるようです。 現在ログオンしているユーザ名がレジストリのどこかに保持されて いるのであれば、マクロから直接参照しにいけばいいのかな。。と 思っているのですが。 そこで質問ですが、  ・レジストリから現在ログオンしているユーザ名を取得することは   可能でしょうか。可能ならどこを参照すればよいのでしょうか。  ・そもそもコマンド実行する以外で取得することは可能なのでしょうか。   もし他の方法があればお教え下さい。 ご教示の程、宜しくお願い致します。

  • 「ドメイン」ってコンピュータ名を選ぶのでしょうか

    初歩的な質問かもしれません。すみません。 私の職場にはたくさんのマシンがLANにつながっていて、他のマシンのファイルにアクセスしたりできます。(←とりたてて言うことではありませんが。) コントロール+ALT+DELETEキー を押してマシンにログオンするとき、ログオン情報というダイアログボックスに「ユーザ名」と「パスワード」を入力するのですが、 もうひとつ「ドメイン」という欄があります。 このドメインという欄はチョイスボックスになっていて、自分のコンピュータ名と ドメインの名前のようなものが選べます。 私は自分のマシンのコンピュータ名を選ぶとログオンできます。 私は、ドメインというのはコンピュータのグループのようなものだと思います。 私がよくわからないのは、なぜ「ドメイン」が自分のコンピュータ名なのか、ということです。 自分のコンピュータ名を選ぶのと、そうでないのの違いがよくわからないのです。 こういうことでしょうか。 ドメインの欄で自分のマシンのコンピュータ名を選んでログオンする人は、他のマシンから同じユーザ名でログオンすることはできないが、 ドメインの名前を選んでログオンできる人は、他のマシンから同じユーザ名でログオンできる、 ということでしょうか。 「ドメイン」欄って、ユーザを管理しているマシンの名前を選ぶ欄なのでしょうか。 「ドメイン」欄で自分のマシンのコンピュータ名を選ぶということは、自分のマシンのファイルしかアクセスできないのかな、なんて思ったら、そうではなさそうです。 私は「ドメイン」とは何なのか、はっきりと理解できていないような気がします。 OSは、WindowsNT4.0です。

  • Windowsのコンピューター名等を取得するプログラム

    お世話になります。 IPアドレスのみがわかっているリモートのWindowsマシン(対象はWin98以上、できればWin95も)の情報を取得する方法を探しています。 ●取得したい情報 ・コンピュータ名 ・Windowsの種類(98や2000、XP) ・Windowsにログインしているユーザー名 これらの情報を取得するためにはどの言語(C,VB,VBScript,JScript他なんでも可)でどんな手順(触りの部分でもかまいません)を使えば実現できるでしょうか? コマンドを実行して出力の内容を整形するというようなことでもOKです。その場合どんなコマンドを使えばよいか示して頂ければと思います。 例えばコンピューター名だったら”nbtstat- A IPアドレス”の結果から取得するなど。 ※リモートのWindowsには何も追加インストールをしない仕組みが良いです。

  • コンピュータ名を変更したらログオンできないのです

    NT Workstation4.0を使っています。 初心者的なミスをしてしまい、アドバイスをお願いします。 本当に軽い気持ちで、コンピュータ名を変更してしまい、 自分自身でドメインに参加出来なくなってしまいました。 つまり、コンパネのネットワークで名前を変更してしまいました。 そのときの注意ウィンドウに、確認表示があったのですが、 そのままOKしてしまったのです。 ときすでに遅し。 Userによるログオンしかできません。 管理者権限でのログオンができません。 PDCの設定などなにもせず、単に名前だけ変えてしまいました。 とりあえず、この状態から以前の状態に戻したいのですが、 クリーンインストしかありませんか?。 本当に初歩的なミスで恥ずかしいのですが、ご教示戴けませんでしょうか。 よろしくお願いします。

  • リモートコンピュータのPC名を取得したいのですが・・・・。

    すみません。どなたかご存知でしたら教えてください。 私はVBの初心者です。VB2005を使用しています。 IPアドレスを指定し、そのPCのコンピュータ名を取得したいと考えています。色々調べたところ、APIを呼び出さなければいけないところまではわかったのですが、その先がなかなか判明しません。 Myクラスを使うとローカルPC名は簡単に取得できるのですが、 リモートとなると、なかなかどのサイトにも乗っていません。 リモートPCはメールサーバや、WEBサーバではなく、ただのクライアントなので、DNS引きの取得方法では取得できないようです。 すみませんが、困っています。 よろしくお願いいたします。

専門家に質問してみよう