Ниже приведена функция с именем ID, возвращающая сетевое имя входа:
function ID: String ; var rslt: DBIResult ;szErrMsg: DBIMSG ;pszUserName: PChar ;begin tryResult := '' ;pszUserName := nil ;GetMem(pszUserName, SizeOf(Char) * DBIMAXXBUSERNAMELEN) ;rslt := DbiGetNetUserName(pszUserName);if rslt = DBIERR_NONE thenResult := StrPas(pszUserName)elsebeginDbiGetErrorString(rslt, szErrMsg);raise Exception.Create(StrPas(szErrMsg));end ;FreeMem(pszUserName, SizeOf(Char) * DBIMAXXBUSERNAMELEN) ;pszUserName := nil ;excepton E: EOutOfMemory do ShowMessage('Ошибка. ' + E.Message);on E: Exception do ShowMessage(E.Message);end ;if pszUserName <> nil then FreeMem(pszUserName, SizeOf(Char) * DBIMAXXBUSERNAMELEN) ;end ; |
[000420]