On-line: MIKHAIL, гостей 1. Всего: 2 [подробнее..]
АвторСообщение
постоянный участник


Пост N: 146
Зарегистрирован: 21.04.09
ссылка на сообщение  Отправлено: 29.01.12 19:10. Заголовок: Сетевое имя пользователя


Добрый день, уважаемые...

В xHarbour есть такая функция netname(), которая возвращает сетевое имя пользователя и другие параметры. Возникла такая проблема: если длина сетевого имени, с которым пользователь зарегистрировался в системе, больше 15 символов, то функция возвращает пустую строку. И как с этим бороться, подскажите...

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 3 [только новые]


постоянный участник


Пост N: 718
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 30.01.12 10:06. Заголовок: NetName() использует..


NetName() использует NetBios, а там ограничение - 15 символов.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 147
Зарегистрирован: 21.04.09
ссылка на сообщение  Отправлено: 30.01.12 13:29. Заголовок: Так как с этим борот..


Так как с этим бороться? Может кто-то уже для себя решал такую проблему?

Есть такая программа на CPP. Она записывает нужное имя в файл на диск. Но прикрутить ее в качестве подпрограммы в xHarbour знания не позволяют. Может кто поможет с этим?

#include <windows.h>
#include <lmcons.h>
#include <stdlib.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
DWORD nSize = max(UNLEN,MAX_COMPUTERNAME_LENGTH)+14;
DWORD nSizeUN = nSize, nSizeCN = nSize;
FILE *file;

char far *lpUN = new char[nSize];
char far *lpCN = new char[nSize];
char *srcDest = new char[nSize*2];

GetUserName(lpUN,&nSizeUN);
GetComputerName(lpCN,&nSizeCN);

if (argc>=2) {
file=fopen(argv[1],"w");
if (file!=NULL) {
strcpy(srcDest,"USERNAME=");
strcat(srcDest,lpUN);
strcat(srcDest,"\n");
strcat(srcDest,"COMPUTERNAME=");
strcat(srcDest,lpCN);
strcat(srcDest,"\n");

fputs(srcDest,file);
fclose(file);
}
}

delete[] lpUN;
delete[] lpCN;
delete[] srcDest;

return 0;
}


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1079
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 30.01.12 13:49. Заголовок: Urri пишет: В xHarb..


Urri пишет:

 цитата:
В xHarbour есть такая функция netname(), которая возвращает сетевое имя пользователя и другие параметры.


Какие другие параметры возвращает netname()
В Win netname() == GetComputerName()
hb_username() == GetUserName()
все другое можно и без знаний С++ написать

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 224
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет