Доброго времени суток!. Помогите пожалуйста! Пишу редактор реестра Windows на С#.При получении значения параметра из реестра типа DWORD , получаю не число (2147491839) ,а (-2147475457)(это я понял типа что-то типа NULL). Я знаю что GetValue возвращает тип Object, но получаеться что Object не может вместить в себя такое число.Беру меньшее число все нормально большее нет.
int dWord = 0;
dWord = (int)key.GetValue(valName);
Здравствуйте, malya, Вы писали:
M>Доброго времени суток!. Помогите пожалуйста! Пишу редактор реестра Windows на С#.При получении значения параметра из реестра типа DWORD , получаю не число (2147491839) ,а (-2147475457)(это я понял типа что-то типа NULL). Я знаю что GetValue возвращает тип Object, но получаеться что Object не может вместить в себя такое число.Беру меньшее число все нормально большее нет.
В хексе оба числа — 0x80001FFF. Поэтому компьютер "видит" это число правильно. В чем вопрос? Как ВАМ правильно его "увидеть"?
Здравствуйте, Smarty, Вы писали:
S>Здравствуйте, malya, Вы писали:
M>>Доброго времени суток!. Помогите пожалуйста! Пишу редактор реестра Windows на С#.При получении значения параметра из реестра типа DWORD , получаю не число (2147491839) ,а (-2147475457)(это я понял типа что-то типа NULL). Я знаю что GetValue возвращает тип Object, но получаеться что Object не может вместить в себя такое число.Беру меньшее число все нормально большее нет.
S>В хексе оба числа — 0x80001FFF. Поэтому компьютер "видит" это число правильно. В чем вопрос? Как ВАМ правильно его "увидеть"?
Я понял но еще вопрос почему такая разница в числах и где она берется и как мне делать (какое число в моем редакторе реестра мне отображать)? Спасибо!!!
Здравствуйте, malya, Вы писали:
M>Я понял но еще вопрос почему такая разница в числах и где она берется и как мне делать (какое число в моем редакторе реестра мне отображать)?
Когда в реестр пишут DWORD — это просто 32 бита, как их интерпретировать — signed или unsigned — личное дело того, кто эти биты читает. Можете предоставить выбор юзеру, типа
Display Registry DWORD as
Signed
Unsigned
Hex
Bin
...
Если вы не понимаете отношение signed/unsigned — не рано ли братся за редактор реестра?
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, malya, Вы писали:
M>>Я понял но еще вопрос почему такая разница в числах и где она берется и как мне делать (какое число в моем редакторе реестра мне отображать)?
А>Когда в реестр пишут DWORD — это просто 32 бита, как их интерпретировать — signed или unsigned — личное дело того, кто эти биты читает. Можете предоставить выбор юзеру, типа
А>Display Registry DWORD as А>Signed А>Unsigned А>Hex А>Bin А>...
А>Если вы не понимаете отношение signed/unsigned — не рано ли братся за редактор реестра?