Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема в функции определения идентификатора желе 
:(
    Опции темы
alexplato
Дата 19.10.2011, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 14.11.2010

Репутация: нет
Всего: нет



Ниже приведена фукнция

Код

public static string HashInfoHardDisks()
        {
            try
            {
                StringBuilder sb = new StringBuilder();

                try
                {
                    
                    foreach (ManagementObject mdd in new ManagementObjectSearcher(new SelectQuery("Win32_DiskDrive")).Get())
                    {
                        //throw new ArgumentNullException();
                        if (Regex.IsMatch((string)((PropertyData)mdd.Properties["MediaType"]).Value, @"^(?i:FIXED[\s\t]+HARD\sDISK[\s\t\w]*)", RegexOptions.Compiled))
                        {
                            sb.Append(((PropertyData)mdd.Properties["Model"]).Value);
                            sb.Append(((PropertyData)mdd.Properties["Size"]).Value);

                            try
                            {
                                sb.Append(((PropertyData)mdd.Properties["SerialNumber"]).Value);
                            }
                            catch (Exception expin)
                            {
                                Error2 = "ExcIn: " + expin.Message;
                                foreach (ManagementObject mpm in new ManagementObjectSearcher(new SelectQuery("Win32_PhysicalMedia")).Get())
                                {
                                    if ((string)((PropertyData)mdd.Properties["DeviceID"]).Value == (string)((PropertyData)mpm.Properties["Tag"]).Value)
                                    {
                                        sb.Append(((PropertyData)mpm.Properties["SerialNumber"]).Value);
                                        break;
                                    }
                                }
                            }
                        }
                    }
                }
                catch (Exception exp)
                {
                    Error1 = "Exception1: " + exp.Message + ":DESC:" + exp.ToString();
                    return "";// "Exception1: " + exp.Message;
                }

                StringBuilder sr = new StringBuilder();
                foreach (byte b in MD5.Create().ComputeHash(Encoding.ASCII.GetBytes(sb.ToString()))) sr.Append(b.ToString("x2"));

                return sr.ToString();
            }
            catch (Exception exp)
            {
                Error1 = "MainHashException: " + exp.Message;
                return "";// "MainHashException: " + exp.Message;
            }
        }


Тестирую на разных компьютерах. На трети из них выдает следующие исключения (вот несколько примеров):
- Exception1: Значение не может быть неопределенным.
- Exception1: Value cannot be nill. Parameter name: input
- Exception1: Значение не может быть неопределенным.

Помогите избавиться от ошибки. Помощь могу оплатить.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0669 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.