Страница: 1 |
Страница: 1 |
Вопрос: Уникальный код компьютера. VB2005
Добавлено: 30.01.07 17:54
Автор вопроса: AlexDerS
Как можно сгенерировать (получить) уникальный код компьютера?
в VB2005.
Ответы
Всего ответов: 13
Номер ответа: 1
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #1
Добавлено: 30.01.07 18:05
По IP адресу попробуй.
Номер ответа: 2
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #2
Добавлено: 30.01.07 18:08
В опредённый промежуток времени отслеживать координаты мышки.
Номер ответа: 3
Автор ответа:
AlexDerS
Вопросов: 37
Ответов: 61
Профиль | | #3
Добавлено: 30.01.07 18:14
Нет.
Я имел ввиду код машины, на котором установлено приложение.
Номер ответа: 4
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #4
Добавлено: 30.01.07 19:47
уникального кода компьютера в природе не существует..
Номер ответа: 5
Автор ответа:
AlexDerS
Вопросов: 37
Ответов: 61
Профиль | | #5
Добавлено: 30.01.07 21:19
ну а "неуникальный"?,
например тот, который использует Windows для создания установочного кода (вместе с уникальным серийным номером)?
Номер ответа: 6
Автор ответа:
BUMM ®
Вопросов: 8
Ответов: 482
Профиль | | #6
Добавлено: 31.01.07 00:23
ну а "неуникальный"?,
например тот, который использует Windows для создания установочного кода (вместе с уникальным серийным номером)?
этот как раз уникальный, Привяжись к сериалу процессора жесткого диска и BIOS.
например..
Dim diskClass As New System.Management.ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive"
Dim disk As System.Management.ManagementObject
Dim s As String
For Each disk In diskClass.Get()
s &= (disk("eviceID" & ControlChars.CrLf)
Next disk
MsgBox(s)
примерно та же фишка для остальных серийников
вот описание основных классов
class Win32_BIOS : CIM_BIOSElement
{
uint16 BiosCharacteristics[];
string BIOSVersion[];
string BuildNumber;
string Caption;
string CodeSet;
string CurrentLanguage;
string Description;
string IdentificationCode;
uint16 InstallableLanguages;
datetime InstallDate;
string LanguageEdition;
String ListOfLanguages[];
string Manufacturer;
string Name;
string OtherTargetOS;
boolean PrimaryBIOS;
datetime ReleaseDate;
string SerialNumber;
string SMBIOSBIOSVersion;
uint16 SMBIOSMajorVersion;
uint16 SMBIOSMinorVersion;
boolean SMBIOSPresent;
string SoftwareElementID;
uint16 SoftwareElementState;
string Status;
uint16 TargetOperatingSystem;
string Version;
};
class Win32_DiskDrive : CIM_DiskDrive
{
uint16 Availability;
uint32 BytesPerSector;
uint16 Capabilities[];
string CapabilityDescriptions[];
string Caption;
string CompressionMethod;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
string CreationClassName;
uint64 DefaultBlockSize;
string Description;
string DeviceID;
boolean ErrorCleared;
string ErrorDescription;
string ErrorMethodology;
uint32 Index;
datetime InstallDate;
string InterfaceType;
uint32 LastErrorCode;
string Manufacturer;
uint64 MaxBlockSize;
uint64 MaxMediaSize;
boolean MediaLoaded;
string MediaType;
uint64 MinBlockSize;
string Model;
string Name;
boolean NeedsCleaning;
uint32 NumberOfMediaSupported;
uint32 Partitions;
string PNPDeviceID;
uint16 PowerManagementCapabilities[];
boolean PowerManagementSupported;
uint32 SCSIBus;
uint16 SCSILogicalUnit;
uint16 SCSIPort;
uint16 SCSITargetId;
uint32 SectorsPerTrack;
uint32 Signature;
uint64 Size;
string Status;
uint16 StatusInfo;
string SystemCreationClassName;
string SystemName;
uint64 TotalCylinders;
uint32 TotalHeads;
uint64 TotalSectors;
uint64 TotalTracks;
uint32 TracksPerCylinder;
};
class Win32_Processor : CIM_Processor
{
uint16 AddressWidth;
uint16 Architecture;
uint16 Availability;
string Caption;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
uint16 CpuStatus;
string CreationClassName;
uint32 CurrentClockSpeed;
uint16 CurrentVoltage;
uint16 DataWidth;
string Description;
string DeviceID;
boolean ErrorCleared;
string ErrorDescription;
uint32 ExtClock;
uint16 Family;
datetime InstallDate;
uint32 L2CacheSize;
uint32 L2CacheSpeed;
uint32 LastErrorCode;
uint16 Level;
uint16 LoadPercentage;
string Manufacturer;
uint32 MaxClockSpeed;
string Name;
string OtherFamilyDescription;
string PNPDeviceID;
uint16 PowerManagementCapabilities[];
boolean PowerManagementSupported;
string ProcessorId;
uint16 ProcessorType;
uint16 Revision;
string Role;
string SocketDesignation;
string Status;
uint16 StatusInfo;
string Stepping;
string SystemCreationClassName;
string SystemName;
string UniqueId;
uint16 UpgradeMethod;
string Version;
uint32 VoltageCaps;
};
Номер ответа: 7
Автор ответа:
Эндрю
Вопросов: 7
Ответов: 10
Профиль | | #7
Добавлено: 31.01.07 03:25
модешь брать из реестра название,степпинг,семейство и модель процессора(ну еще для надежности еще какие нибудь данные оттуда...)
Номер ответа: 8
Автор ответа:
W[4Fh]LF
Вопросов: 0
Ответов: 187
Web-сайт:
Профиль | | #8
Добавлено: 31.01.07 09:40
Бери серийник винта и дату биоса, вполне достаточно.
Номер ответа: 9
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #9
Добавлено: 31.01.07 11:09
А чем мои предложения плохи?
Номер ответа: 10
Автор ответа:
BUMM ®
Вопросов: 8
Ответов: 482
Профиль | | #10
Добавлено: 31.01.07 22:40
Слетела винда,... Надо переустановить прогу,... Ты будешь искать место, в которое ты мышкой ткнул в момент установки???. Если нужно число от балды получить, можно генератор случайных чисел использовать.
В методе предложенном мной привязка идет к процу, биосу и винту. Можно сделать контроль: если 2 из 3-х или ни один из номеров не совпадают, требовать повторную активацию. В этом случае если один номер не совпадает, делаем вывод что полетел один из компонентов, и активация не обязательна(разгружаем сервер активации )
Номер ответа: 11
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #11
Добавлено: 31.01.07 22:43
А чем хороши? По IP... хм ну апи часто меняется, а про координаты мышки - норм шутка, смейлсо, те чуть до петросяна нехватило )))
Номер ответа: 12
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #12
Добавлено: 01.02.07 13:30
Я начинающий юморист... )
Мне дошло, какую я чуш сморозил.
Номер ответа: 13
Автор ответа:
BUMM ®
Вопросов: 8
Ответов: 482
Профиль | | #13
Добавлено: 03.02.07 23:10
Ну на крайний случай можно получить InstallationID который пользует майкрософт для активации винды. Снотри мой пост вверху и подставляй
"Win32_WindowsProductActivation"
через этот класс можно даже виндовс активировать