Форум: "Система";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
ВнизВ чем разница? Найти похожие ветки
← →
YurikGl © (2004-03-07 11:54) [0]Не пойму, где меня кидают.
var
st:shortString;
Buffer1,buffer2:array[0..255] of char;
size:dword;
begin
st:="STable"+IntToStr(random(10000));
size:=255;
далее
1-й вариант
if GetUserName(buffer1,size) then st:=st+string(buffer1)
else st:=st+IntToStr(random(10000));
if GetComputerName(buffer1, size) then st:=st+string(buffer1)
else st:=st+IntToStr(random(10000));
2-й вариант
if GetComputerName(buffer1, size) then st:=st+string(buffer1)
else st:=st+IntToStr(random(10000));
if GetUserName(buffer1,size) then st:=st+string(buffer1)
else st:=st+IntToStr(random(10000));
Ну дык вот. В первом случае функции GetUserName и GetComputerName возвращают true и соответсвенно, необходимые имена, а во втором случае GetUserName возвращает false.
← →
Anatoly Podgoretsky © (2004-03-07 12:00) [1]Имя компьютера короче имени пользователся.
← →
YurikGl © (2004-03-07 12:03) [2]И что?
← →
YurikGl © (2004-03-07 12:13) [3]А если имя компьютера окажется длиннее имени пользователя? Каждый раз проверять что-ли? И выполнять операторы в разной последовательности?
← →
Anatoly Podgoretsky © (2004-03-07 12:26) [4]А то что в этом случает ты не сможешь получить имя пользователся, будет облом.
Проверять не надо, надо писать правильно, устанавливать size в правильное значение перед вызовом функции!
И не заьывай, что есть MAX_COMPUTERNAME_LENGTH, а не 255
Кроме того не мешало бы проверять на ошибки и выдавать соответствующее сообщение
← →
YurikGl © (2004-03-07 12:37) [5]Функция была взята с
http://delphimaster.net/view/6-1075699593/
Спасибо, заработал следующий код.
size:=MAX_COMPUTERNAME_LENGTH;
if GetComputerName(buffer, size) then st:=st+string(buffer)
else st:=st+IntToStr(random(10000));
size:=120;
if GetUserName(buffer,size) then st:=st+string(buffer)
else st:=st+IntToStr(random(10000));
Мне только не совсем понятно, что происходило. Что менялось после вызова GetComputerName? Неужели size?
← →
YurikGl © (2004-03-07 12:43) [6]Точно size поменялся. Спасибо.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.03 c