Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/40: Рейтинг темы: голосов - 40, средняя оценка - 4.85
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
1

Получить имя компьютера

26.04.2016, 21:30. Показов 7384. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть форма, есть текст. Но не работает.VB2010

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Public Class Form1
   
    'узнать имя компьютера
   
   Private Declare Function GetComputerName Lib "kernel32" Alias _
  "GetComputerNameA" (ByVal lpBuffer As String) As Long
    Private Const MAX_COMPUTERNAME_LENGTH = 15
    Sub Demo_GetComputerName()
        Dim strBuffer As String
        Dim lngResult As Long
        lngResult = GetComputerName(strBuffer)
        If lngResult = 1 Then
            MsgBox(strBuffer)
        End If
    End Sub
 
End Class
Миниатюры
Получить имя компьютера  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2016, 21:30
Ответы с готовыми решениями:

Зная ip адрес компьютера и его имя вывести имя пользователя
Зная ip адрес компьютера и его имя вывести имя пользователя в текстовое поле. я смог осилить...

Вывести IP-адрес компьютера, имя компьютера, имя пользователя и дату и время включения/выключения компьютера
необходимо написать скрипт который, будет лежать в автозагрузке на локальных машинах и выводить в...

Получить имя компьютера
Всем доброго времени суток, хотел спросить с помощью какой команды можно определить название...

Получить имя компьютера в переменную
Доброго времени суток. Мне необходимо при старте программы узнать имя компьютера с которого она...

12
Почетный модератор
21400 / 9134 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
26.04.2016, 21:41 2
VB.NET
1
MsgBox(My.Computer.Name)
2
Модератор
Эксперт .NET
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
26.04.2016, 21:44 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

а как же это????
VB.NET
1
MsgBox(My.Computer.Name)
Добавлено через 1 минуту
Памирыч,
1
Памирыч
26.04.2016, 21:48
  #4

Не по теме:

Yury Komar, я слишком стар для нормальных ответов на серьезные вопросы, поэтому быстрее лезу в простые темы :D

0
4407 / 3531 / 843
Регистрация: 02.02.2013
Сообщений: 3,417
Записей в блоге: 2
26.04.2016, 22:38 5
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

VB.NET
1
2
3
4
5
6
7
8
9
10
   Private Declare Function GetComputerName Lib "kernel32" Alias _
"GetComputerNameA" (ByVal lpBuffer As String, ByRef nSize As Integer) As Integer
    Sub Demo_GetComputerName()
        Dim strBuffer As New String(" ", 250)
        Dim lngResult As Integer
        lngResult = GetComputerName(strBuffer, 250)
        If lngResult = 1 Then
            MsgBox(Trim(strBuffer))
        End If
    End Sub
1
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
09.05.2016, 11:13  [ТС] 6
Помогите переделать код от VisualBasic 6 в VisualBasic 2010, а то не работает.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Public Function ComputerName() As String
Dim strBuffer As String
Dim strAns As Long
 
strBuffer = Space(255)
strAns = GetComputerName(strBuffer, 255)
If strAns <> 0 Then
ComputerName = Left(strBuffer, InStr(strBuffer, Chr(0)))
End If
End Function
 
Private Sub Command1_Click()
Text1 = ComputerName
End Sub
Добавлено через 2 минуты
Код от OVVA не работает.
0
4407 / 3531 / 843
Регистрация: 02.02.2013
Сообщений: 3,417
Записей в блоге: 2
09.05.2016, 12:34 7
gleb414,
Обратите внимание на описание функции GetComputerName, там второй параметр объявлен как ByRef nSize As Integer. Вам достаточно было просто скопировать предложенный код. Не понимаю, что вы там хотите переделать.
0
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
09.05.2016, 15:42  [ТС] 8
Скопировал, вставил.
Поток 'vshost.RunParkingWindow' (0xd0c) завершился с кодом 0 (0x0).
Поток '<Без имени>' (0xb08) завершился с кодом 0 (0x0).
Программа "[104] 5.vshost.exe: Трассировка программы" завершилась с кодом 0 (0x0).
Программа "[104] 5.vshost.exe: Управляемый (v4.0.30319)" завершилась с кодом 0 (0x0).
Имя компьютера не отобразилось.

Добавлено через 15 минут
ovva по вашему коду не отображается нужная информация.
По моему от VB6 в VB2010указывает на Left.
Ошибка 1 "Public Property Left As Integer" не имеет параметров, поэтому невозможно проиндексировать возвращаемый им тип.
0
1568 / 1447 / 303
Регистрация: 01.10.2011
Сообщений: 2,636
09.05.2016, 15:51 9
Цитата Сообщение от gleb414 Посмотреть сообщение
ovva по вашему коду не отображается нужная информация
выдает то что нужно
Миниатюры
Получить имя компьютера  
0
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
09.05.2016, 16:06  [ТС] 10
Вот код который показывает имя компьютера. Рабочий.

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Public Class Form1
 
    Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, ByRef nSize As Long) As Long
    Public Function ComputerName() As String
        Dim strBuffer As String
        Dim strAns As Long
 
        strBuffer = Space(255)
        strAns = GetComputerName(strBuffer, 255)
        ComputerName = strBuffer
    End Function
 
    Private Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
        TextBox1.text = ComputerName()
    End Sub
End Class
0
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
09.05.2016, 16:10  [ТС] 11
Тоже выдает.
Миниатюры
Получить имя компьютера  
0
0 / 0 / 2
Регистрация: 05.01.2015
Сообщений: 74
09.05.2016, 16:26  [ТС] 12
Спасибо за помощь.
0
Модератор
Эксперт .NET
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
13.05.2016, 16:19 13
а зачем такой код если у .NET есть свои методы вывода имени компьютера? Или это принцыпиально использовать именно такой подход? ведь в NET та же API, но завернута в красивую оболочку в виде одной строки?

Добавлено через 2 минуты
тоесть такой красивый, и вобщем-то понятный, код вам не нравится?
VB.NET
1
Textbox1.Text = My.Computer.Name
2
13.05.2016, 16:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2016, 16:19
Помогаю со студенческими работами здесь

Как получить имя компьютера
Как получить имя компьютера? Если указывать %UserName% выбивает ошибка вот код procedure...

Как получить полное имя компьютера
Как получить полное имя компьютера? И связанный с этим вопрос: &quot;Как получить имя домена или рабочей...

Не могу получить имя своего компьютера
function GetLocalAddr:integer; var host : pansichar; begin if...

Как в Linux получить доменное имя своего компьютера?
Есть функция, в которой сокет привязывается к порту, и начинает его слушать: bool ListenPort(int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru