Вниз
Скачать: CL | DM;

Как узнать имя пользователя, запустившего приложение?   Найти похожие ветки 

← →
Dimon777 ©   (2007-06-26 12:16) [0]

Как узнать имя пользователя, запустившего приложение?
Причем это надо сделать до инциализации этого приложения.

program Project1;

uses
 Forms,
 Unit1 in "Unit1.pas" {Form1};

{$R *.res}

begin
 Здесь надо узнать имя пользователя
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.


← →
iXT ©   (2007-06-26 12:28) [1]

GetUserName :)


← →
homm ©   (2007-06-26 12:31) [2]

> Как узнать имя пользователя, запустившего приложение?

Попросить его ввести свое имя в диалоговом окне, либо четко проговорить в микрофон :)

> Причем это надо сделать до инциализации этого приложения.

До? Значит это должна делать система, а не твое приложение? Это врят-ли.


← →
KilkennyCat ©   (2007-06-26 12:49) [3]


> homm ©   (26.06.07 12:31) [2]

система это и так делает. всегда.


← →
homm ©   (2007-06-26 12:55) [4]

> система это и так делает. всегда.

Это ясно, просто под фразой «Как узнать» скорее всего кроется «как сдлать некие дйствия сэтим именем, а возможно и условный переход» :)

А вооще конечно, что примать под «инциализации приложения», если посмотреть на [0], то автор имел ввиду Application.Initialize, а мне вот подумалось что это до вызова системой CreateProcess.


← →
Dimon777 ©   (2007-06-26 14:07) [5]


> Это ясно, просто под фразой «Как узнать» скорее всего кроется
> «как сдлать некие дйствия сэтим именем, а возможно и условный
> переход» :)
>
> А вооще конечно, что примать под «инциализации приложения»,
>  если посмотреть на [0], то автор имел ввиду Application.Initialize


Именно!

Вот рабочий код вызова этой самой GetUserName. Пример взят с королевства. Оказывается GetUserName вызвать не так уж просто!!!

program Project1;

uses
 Forms,
 SysUtils,
 Windows,
 Unit1 in "Unit1.pas" {Form1};

{$R *.res}

var s:string;

function userName: string;
var
 Buf: array[0..255]of char;
 c: cardinal;
begin
 c:=Length(Buf);
 if getUserName(Buf, c) then
   result:=Buf
 else
   RaiseLastOSError;
end;

begin
 //и уже здесь можно что-нибудь делать с UserName, например присвоить:
 S:=userName;
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.


← →
Сергей М. ©   (2007-06-26 15:02) [6]


> GetUserName вызвать не так уж просто


И что ?

Ну вызови "сложно" - что это изменит ?

У функции вполне конкретная задача, и функция с ней отлично справляется, несмотря на "уровень простоты" ее вызова.

Ы?


← →
Dimon777 ©   (2007-06-26 15:07) [7]

Да все нормально, все работает, проблема решена!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
2-1182965649
mc0808
2007-06-27 21:34
2007.07.22
Программа не запускается на машине без Дельфи


11-1165928861
Trible
2006-12-12 16:07
2007.07.22
Наследование от TControl. Почему почему нельзя вводить переменные


3-1177048463
MZ
2007-04-20 09:54
2007.07.22
Фильтр в DBGridEh


2-1182932640
ОН
2007-06-27 12:24
2007.07.22
Создание таблицы в Access


15-1182538255
ProgRAMmer Dimonych
2007-06-22 22:50
2007.07.22
Последняя тема по Direct3D9




   Наверх