| |
 32 Кб. |
|
| | Сбор сведениёв | |
| |
| |
| |
|
|
| | А где-же описание, справка?
Нет подтверждения, что текстовый файл создан, вывалилась не попрощавшись. Не культурно, однако, с ее стороны.
Я в своем бардаке на рабочем столе его не сразу и нашел.
И, наверное, надо было сначала показать основную форму, а затем окошко-пояснение что делать требуется.
А то запустил прогу, и не могу понять куда чего писать от меня требуют.  | |
| |
| |
|
|
| |
|
|
| | Какиеба ещё сведения содрать?
Собрать! | |
| |
| |
| |
|
|
| | соглашусь с Лукасом
есть такое понятие - культура программирования.
нужно с младых ногтей приучить себя писать "правильный" код, обработчики ошибок и интерфейс, понятный бабе Клаве.
после того, как выскочило сообщение "...Введите информацию о Вашей организации..." - лично у меня что-то внутри ёкнуло... | |
| |
| |
|
|
| |
 36 Кб. |
|
| | Описание будет кода выложу на сайте - готовую пограмму, а пока тока черновики с вами обмусоливаю....
Понял, что так - лучшее будет | |
| |
| |
| |
 36 Кб. |
|
| | Итак пока вот так ......
Жду пожеланиев и замечаниев........
 | |
| |
| |
| |
|
|
| | - мессейдж при загрузке однозначно раздражает
- иконку на форме отличную от стандартной разместить бы
- форму внятно обозвать
- обычно ВЕРХНИЙ РЕГИСТР выдает старого фокспрошника (имхо нинада так писать)
- выровнять контролы. сделать между ними гармоничные расстояния
- а вот за рессайз и за кнопочку 'спаси и сохрани' ВЫПОРОТЬ!!! | |
| |
| |
| |
 36 Кб. |
|
| | Спасибо!!!!
За советы спасибо!!!!! | |
| |
| |
| |
|
|
| | иногда еще IP и MAC знать хочеться ...... | |
| |
| |
| |
|
|
| | Просканировать IP сети куда ни шло, а как же узнать какой IP у компа, на котором сидишь? - вот в чём вопрос..............  | |
| |
| |
| |
|
|
| |
Option Explicit
'Определение локального IP адреса
Public Const MAX_WSADescription As Long = 256
Public Const MAX_WSASYSStatus As Long = 128
Public Const ERROR_SUCCESS As Long = 0
Public Const WS_VERSION_REQD As Long = &H101
Public Const WS_VERSION_MAJOR As Long = WS_VERSION_REQD \ &H100 And &HFF&
Public Const WS_VERSION_MINOR As Long = WS_VERSION_REQD And &HFF&
Public Const MIN_SOCKETS_REQD As Long = 1
Public Const SOCKET_ERROR As Long = -1
Public Type HOSTENT
hName As Long
hAliases As Long
hAddrType As Integer
hLen As Integer
hAddrList As Long
End Type
Public Type WSADATA
wVersion As Integer
wHighVersion As Integer
szDescription(0 To MAX_WSADescription) As Byte
szSystemStatus(0 To MAX_WSASYSStatus) As Byte
wMaxSockets As Integer
wMaxUDPDG As Integer
dwVendorInfo As Long
End Type
Public Declare Function WSAGetLastError Lib "wsock32" () As Long
Public Declare Function WSAStartup Lib "wsock32" _
(ByVal wVersionRequired As Long, _
lpWSADATA As WSADATA) As Long
Public Declare Function WSACleanup Lib "wsock32" () As Long
Public Declare Function gethostname Lib "wsock32" _
(ByVal szHost As String, _
ByVal dwHostLen As Long) As Long
Public Declare Function gethostbyname Lib "wsock32" _
(ByVal szHost As String) As Long
Public Declare Sub CopyMemory Lib "kernel32" _
Alias "RtlMoveMemory" _
(hpvDest As Any, _
ByVal hpvSource As Long, _
ByVal cbCopy As Long)
'Определение локального IP адреса
Function GetIPAddress() As String
Dim sHostName As String * 256
Dim lpHost As Long
Dim HOST As HOSTENT
Dim dwIPAddr As Long
Dim tmpIPAddr() As Byte
Dim i As Integer
Dim sIPAddr As String
If Not SocketsInitialize() Then
GetIPAddress = ""
Exit Function
End If
If gethostname(sHostName, 256) = SOCKET_ERROR Then
GetIPAddress = ""
MsgBox "Windows Sockets error " & str$(WSAGetLastError()) & _
" has occurred. Unable to successfully get Host Name."
SocketsCleanup
Exit Function
End If
sHostName = Trim$(sHostName)
lpHost = gethostbyname(sHostName)
If lpHost = 0 Then
GetIPAddress = ""
MsgBox "Windows Sockets are not responding. " & _
"Unable to successfully get Host Name."
SocketsCleanup
Exit Function
End If
CopyMemory HOST, lpHost, Len(HOST)
CopyMemory dwIPAddr, HOST.hAddrList, 4
ReDim tmpIPAddr(1 To HOST.hLen)
CopyMemory tmpIPAddr(1), dwIPAddr, HOST.hLen
For i = 1 To HOST.hLen
sIPAddr = sIPAddr & tmpIPAddr(i) & "."
Next
GetIPAddress = Mid$(sIPAddr, 1, Len(sIPAddr) - 1)
SocketsCleanup
End Function
Public Function HiByte(ByVal wParam As Integer) As Byte
HiByte = (wParam And &HFF00&) \ (&H100)
End Function
Public Function LoByte(ByVal wParam As Integer) As Byte
LoByte = wParam And &HFF&
End Function
Public Sub SocketsCleanup()
If WSACleanup() <> ERROR_SUCCESS Then
MsgBox "Socket error occurred in Cleanup."
End If
End Sub
Public Function SocketsInitialize() As Boolean
Dim WSAD As WSADATA
Dim sLoByte As String
Dim sHiByte As String
If WSAStartup(WS_VERSION_REQD, WSAD) <> ERROR_SUCCESS Then
MsgBox "The 32-bit Windows Socket is not responding."
SocketsInitialize = False
Exit Function
End If
If WSAD.wMaxSockets < MIN_SOCKETS_REQD Then
MsgBox "This application requires a minimum of " & _
CStr(MIN_SOCKETS_REQD) & " supported sockets."
SocketsInitialize = False
Exit Function
End If
If LoByte(WSAD.wVersion) < WS_VERSION_MAJOR Or _
(LoByte(WSAD.wVersion) = WS_VERSION_MAJOR And _
HiByte(WSAD.wVersion) < WS_VERSION_MINOR) Then
sHiByte = CStr(HiByte(WSAD.wVersion))
sLoByte = CStr(LoByte(WSAD.wVersion))
MsgBox "Sockets version " & sLoByte & "." & sHiByte & _
" is not supported by 32-bit Windows Sockets."
SocketsInitialize = False
Exit Function
End If
SocketsInitialize = True
End Function
|
| |
| |
| |
| |
 44 Кб. |
|
| | Нифига себе......
Спасибки - щас засуну.... | |
| |
| |
| |
 48 Кб. |
|
| | Засунул - спасибо!!!!!
=============
А кто такой MAC | |
| |
| |
| |
|
|
| | Номер сетевой карты - МАС адрес.....
устанавливается на заводе.....или системой если мост | |
| |
| |
| |
 48 Кб. |
|
| | ААААААААААААААААААА
А как до него добраться???? | |
| |
| |
| |
 60 Кб. |
|
| | Пока вот так........ | |
| |
| |
| |
 52 Кб. |
|
| | Теперь вот так | |
| |
| |
| |
 60 Кб. |
|
| | Или вот далее | |
| |
| |
| |
|
|
| | Привет час.
Может, текстовый файл создавать без запроса пути, а сразу туда откуда запущена прога?
А в случае ошибки создания (например, запуск с CD)- тогда и запрашивать путь?
Второе. Имя этого текстового файла на мой взгляд должно совпадать с именем проги.
Представляешь, скопировал прогу, поменял имя.... Прошла неделя, файлов в той папке уже много, и ты пользуешь... Хрен сразу и отыщешь это файлик текстовый.....
Плюс к имени лучше добавлять через подчерк дату и время создания, тогда каждый файл будет уникальным. Только необходимо заранее обдумать ошибку в каком-нибудь твоем цикле- а то прога "зависнет" создавая отчеты)))))
Пример:
Прога: MyInfo.exe
Отчет: MyInfo_06-07-09_12.50.41.txt
Потом, в боксе, перед выходом уже, запрос, открыть этот файлец отчета? И открываешь в нотепаде))) Правда опять же реакцию по ошибке не забудь, если запускать будешь нотепад из c:\windows т.к. бывает, что не у всех система именно по этому пути пашет... ))))
И запроос, на введение данных (мсгбох) может не нужно выводить, и так понятно, есть ведь поля....
Про MAC вроде здесь есть кое-что
http://hiprog.com/index.php?option=com_content&task=view&id=444&Itemid=35
Это навскидку)))  | |
| |
| |
|
|
| |
 60 Кб. |
|
| | Вота какая | |
| |
| |
|
|
| |
|
|
| | Советов- что включить в нее? Пиши лучше узкопрофильную, мой тебе совет. Чем больше фич, тем больше гемора, а если эти фишки не нужны особо, только так, для коллекции, то отработку по ошибке тебе все равно придется делать...
Итак, ЧТО было нужно в начале? | |
| |
| |
|
|
| |
|
|
| | Как вариант- узнавать SN процессора....
(вернее ВСЕХ ядер в системе)))) - у меня пишет 4 раза для каждого ядра, но sn все одинкаовые))
Вот код, тока нужен ли- сам решай...
Public Sub GetCpuID()
Dim strComputer
Dim WMI
Dim wmiWin32Object
Dim wmiWin32Objects
Dim strText
Set WMI = GetObject("WinMgmts://" & strComputer)
Set wmiWin32Objects = WMI.InstancesOf("Win32_Processor")
For Each wmiWin32Object In wmiWin32Objects
strText = "ProcessorID: " & wmiWin32Object.ProcessorId & vbCrLf
MsgBox strText
Next
End Sub | |
| |
| |
| |
|
|
| | Спасибо !!!!
Конечно вставим код в приблуду 
только может какую API нужно ещё?
А то у меня не переваривает строки
Set WMI = GetObject("WinMgmts://" & strComputer)
Set wmiWin32Objects = WMI.InstancesOf("Win32_Processor") | |
| |
| |