Як можна отримати серійний номер PC
Вибачте за питання, повний зміст якого я і сам не розумію, але ситуація така:
є багато Compaq комп'ютерів, гвинти все з одного образу, але розрізняти потрібно
за серійними номерами, як їх отримати?
Я так розумію, мова йде про IDE?
Немає IDE тут ні до чого необхідно отримати серійний номер бренду, а він збігається з серійників мат.плату.
Ну тоді я зовсім не розумію, що значить наступне:
є багато Compaq комп'ютерів, гвинти все з одного образу, але розрізняти потрібно за серійними номерами, як їх отримати?
Тобто ти маєш купу компьюторов, вінчестери яких склоніровани чимось типу Norton Ghost, і тому нарвався на те, що у них збігається серійний номер тому (volume). Адже так? Якщо ти зможеш розрізняти IDE вінчестери по їх серійним номером, хіба цього не буде достатньо? Я тобі запропонував приклади, де дістається серійний номер вінчестера. Різницю відчув?
А серійний номер плати (навіть якщо він і існує) ти навряд чи отримаєш.
Існує БД: (PC) - (UserName) - (і т.д). яка оновлюється при вході кожного користувача в мережу. В осередку (PC) зберігається вся інфа про компі (На кого оформлений, інвентарний номер, поточний IP і тд).
При перевстановлення вінди старий хард знімають і відкладають в BackUp S / N гвинта звичайно змінюється, що призводить до втрати (PC) в базі.
Серійник мат.плату прописаний в BIOS від туди його як небудь вийняти можна? (OS WinXP)
> Серійник мат.плату прописаний в BIOS
Зазвичай не прописаний. Може, на Compaq, звичайно, все інакше, але не думаю.
> В осередку (PC) зберігається вся інфа про компі (На кого оформлений,> інвентарний номер, поточний IP і тд).
Бррр. Це де таке відбувається. У режимному НДІ чи що. Опиши детально структуру даних цього "РС", мож хто чого і підкаже. А так - цілковита плутанина і нісенітниця в вихідної постановки питання і подальших уточнень - хто чого куди і як. Хочеш "поритися" в чужих творах і "чогось зламати" - це одне, пишеш чогось сам і не знаєш чого хочеш - це інше, знаєш чого хочеш (наприклад S / N HDD) і не можеш знайти - це третє.
Успіхів !
Можу розповісти передісторію виникнення особисто у мене необхідності отримання серійного номера HDD.
У мене теж є свій продукт, який організовує розподілену мережу. І мені теж потрібно ідентифікувати комп'ютери, але так, щоб це не було незручно користувачеві. Реально зараз там просто робиться так: якщо немає такого комп'ютера, то він автоматично реєструється. Цього достатньо, поки маємо справу лише з комп'ютерами всередині фірми, але якби було потрібно дати доступ ззовні (це передбачалося в перспективі), то я мав план в запасі, власне, цей план я і хочу запропонувати.
Якщо соответствущий серійний номер є базі (тобто, комп'ютер зареєстрований), то ми просто залишаємо все як є і використовуємо вже існуючого такого запису в каталозі.
Якщо цього серійного номера немає, то користувачеві пропонується ввести свій логін / пароль і, якщо цей користувач має право реєструвати нові машини, то створюється новий запис (при цьому можливий запит додаткової інформації).
У твоєму випадку все одно хтось із IT буде міняти цей самий HDD, ось його-то і можна навчити перереєструвати машини. Або хтось з приймання машини з upgrade буде це робити.
Тобто я проблеми не бачу.
Я в цьому форумі якось приводив посилання на код, який читає BIOS під NT / 2K / XP. Спробуй сам пошукати тут або в Google.
На www.sysinternals.com теж точно є приклад читання фізичної пам'яті.
На Wasm.ru в серії статей "Драйвери режиму ядра" є приклад читання inf з CMOS безпосередньо зі своєї програми (з r3 в XP.), За допомогою попередньої установки (і відразу видалення драйвера змінює IOPM (I / O Permission Map) для процесу )