Windowsアプリケーションでログオンしたユーザー名を含む文字列を返す関数がAda 95にありますか?おかげさまで Ada 95でWindowsログインユーザー名を読む
答えて
エイダ95
function GetUsername return String is
function GetEnv (Variable : String) return Interfaces.C.Strings.chars_ptr;
pragma Import (C, GetEnv, "getenv");
Command : constant String := "USERNAME";
Answer_Ptr : constant Interfaces.C.Strings.chars_ptr := GetEnv (Command);
Answer : constant String := Interfaces.C.Strings.Value (Answer_Ptr);
begin
return Answer;
end GetUsername;
ない純粋な、それがうまくフィット(と私はgnat05スイッチを使用する必要はありません):@KeithThompsonコメントからのアイデア、プラス@SimonWright USERNAMEの提案、それを行うための一つの方法は、コードを使用しています。
一般的な答えは、ネイティブWin32 API関数を呼び出してGetUserName
関数を呼び出すために、Ada環境がサポートするすべてのメカニズムを使用することです。
GNAT専用パッケージAda.Command_Line.Environment
が利用可能です。使用
あなたはエイダ2005を使用させた場合、あなたはUSERNAME
の値を取得するには、パッケージAda.Environment_Variablesを使用することができますが(私はWindowsのための右のenv VARだと思う?それはダーウィンのUSER
だ...)
また、 'pragma Import(C、getenv);'を使うこともできます。 –
環境変数に頼ることの問題は、偽造するのが簡単だということです。 (これは 'GetUserName'ですが、自明ではありません。) –
- 1. CまたはC++(またはAda 95)のWindows LDAPグループユーザーチェック
- 2. Windowsバッチプログラミングでファイル名を読む
- 3. サーブレット/ JSPでWindowsクライアントのログインユーザー名を取得する
- 4. Javaログインユーザー名リモートマシン
- 5. Windows CE用Adaツールチェーン
- 6. Ion Authでログインユーザー名とメールアドレス
- 7. Wildflyログインユーザー名とロール
- 8. Windowsフォントを読む
- 9. Windows Mobile 5.0で未読SMSを読む
- 10. Framework CSS "windows 95"のように
- 11. SQL Serverのログインユーザー名とパスワード
- 12. djangoのviews.pyのログインユーザー名
- 13. ReactNative WindowsのChakra名前空間に "Windows"を読み込む方法は?
- 14. std :: fstream Windows C++でファイルを読む
- 15. Windowsサービスで電子メールを読むC#
- 16. JavaでWindows EventLogを読む方法
- 17. R Windowsのシンボルでファイルを読む
- 18. LinuxでDOS/Windowsのテキストファイルを読む
- 19. OllyDbgでWindows Symbolicsを読み込む
- 20. ASP.NETログインユーザーのユーザー名を取得
- 21. AndroidManifestのサービス名を読む
- 22. Ada:ファイルに複数回書き込む
- 23. NPMシステムコールのシンボリックリンクエラー-95私のアプリケーションでのWindows
- 24. ファイルの内容をFortran 95で何度も読み取る
- 25. xmlファイルを名前空間で読む
- 26. FORTRAN 95
- 27. Pythonを使ってWindowsレジストリを読む
- 28. windows .exeファイルのバージョンを読むには?
- 29. 特定のWindowsイベントログイベントを読む
- 30. 電子レンダラプロセスのWindowsコマンドラインオプションを読む
言語(C++など)には、「ユーザー」または「ログイン」の標準では概念がありません。このように、この質問を少し言いたいことがあるかもしれませんが、多くのペダンティックな "それは基本的なAdaの機能性"の答えを避けるためです。おそらく、「私のAdaプログラムからログインしているWindowsユーザーの名前を取得するにはどうすればいいですか?私は* XYZ *コンパイラを使用しています。 –