Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Можно ли узнать имя компа?

248
08 декабря 2007 года
Dmitry2064
590 / / 06.12.2006
Я бы хотел, что бы на домашней машине инструкция Shell не выполнялась (дома как правило идет только отладка, а на рабочей, ессно, должно выпаолняться все). Проблема в том что по Shell запускается исполняемый файл, который на дом. компе находится в другом месте. Поэтому во время отладки все время происходит остановка и приходится ремить эту строку и снова пускать отладку (а потом не забывать отремливать, чтобы на работе все было как надо). А так бы сразу было известно, что если на дом. компе, то "сокращеный" запуск процедур, если на рабочей машине, - то выполнять полный пакет инструкций.
Т.е. можно ли узнать имя компьютера?
Спасибо.
251
08 декабря 2007 года
SkyMаn
1.7K / / 31.07.2007
Код:
Private Declare Function GetComputerNameA Lib "kernel32" (ByVal lpBuffer As String, nSize As Long) As Long
Private Declare Function WNetGetUserA Lib "mpr.dll" (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long
Function GetComputerName() As String
Dim sBuffer As String * 255
If GetComputerNameA(sBuffer, 255&) <> 0 Then
GetComputerName = Left$(sBuffer, InStr(sBuffer, vbNullChar) - 1)
End If
End Function
Function GetUserName() As String
Dim sUserNameBuff As String * 255
sUserNameBuff = Space(255)
Call WNetGetUserA(vbNullString, sUserNameBuff, 255&)
GetUserName = Left$(sUserNameBuff, InStr(sUserNameBuff, vbNullChar) - 1)
End Function
248
09 декабря 2007 года
Dmitry2064
590 / / 06.12.2006
Думал будет выглядеть попроще. Тем не менее вписал это хозяйство в свою кухню. Спасибо большое.
405
10 декабря 2007 года
Dmitrii
554 / / 16.12.2004
Цитата: Dmitry2064
Думал будет выглядеть попроще.


Проще будет выглядеть, если использовать средства WSH:

 
Код:
Sub Example()
Dim objWSNet As Object
Set objWSNet = CreateObject("WScript.Network")
MsgBox objWSNet.ComputerName
Set objWSNet = Nothing
End Sub
248
10 декабря 2007 года
Dmitry2064
590 / / 06.12.2006
Да, такой код воспринимается психикой полегче.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог