Просмотр полной версии : C# проблема с реестром
noxjoker
07.12.2009, 00:37
Здраствуйте у меня есть проблема не могу решить её средствами C#.
Microsoft.Win32.RegistryKey Sp3 = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true);
Sp3.SetValue("SFCSetting", 0xffffff9d, Microsoft.Win32.RegistryValueKind.DWord); // Возникает ерор The type of the value object did not match the specified RegistryValueKind or the object could not be properly converted.
Sp3.Close();
Кто поможет или рациональное решение (без создание батников там или ищо чото) тому +
noxjoker
08.12.2009, 11:24
xlinux между твоим и мои кодом нет разницы! Та же ошыбка ((( также хочу пояснить что оно должно создать REG_DWORD а не REG_SZ.
Просто положите мне этот код в C#
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"SFCSetting"=dword:ffffff9d
Люди Help :confused: :confused:
noxjoker
08.12.2009, 23:37
SitraIT мне бы просто код.
Вот Погуглил хотел бы спросить может кто знает как работать с advapi32.dll в C#
Желательно Пример как записать в реестр .
Зарание спасибо....
BrainDeaD
09.12.2009, 00:05
[StructLayout(LayoutKind.Sequential)]
public struct SECURITY_ATTRIBUTES
{
public int nLength;
public IntPtr lpSecurityDescriptor;
public bool bInheritHandle;
}
[DllImport("advapi32.dll", EntryPoint = "RegCreateKeyEx")]
public static extern uint RegCreateKeyEx(uint hKey, string lpSubKey, uint Reserved, string lpClass, uint dwOptions, uint samDesired, ref SECURITY_ATTRIBUTES lpSecurityAttributes, ref uint phkResult, ref uint lpdwDisposition);
[DllImport("advapi32.dll", EntryPoint = "RegSetValueEx")]
public static extern uint RegSetValueEx(uint hKey, string lpValueName, uint Reserved, uint dwType, string lpData, uint cbData);
static void SetKey()
{
SECURITY_ATTRIBUTES secattr = new SECURITY_ATTRIBUTES();
secattr.nLength = Marshal.SizeOf(secattr);
secattr.lpSecurityDescriptor = (IntPtr)0;
secattr.bInheritHandle = true;
uint neworused = 0;
uint hIDKey = 0;
RegistryKey key = Registry.LocalMachine;
RegistryKey currKey = key.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon");
uint res = RegCreateKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon", 0, null, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, ref secattr, ref hIDKey, ref neworused);
if (res == ERROR_SUCCESS)
{
res = RegSetValueEx(hIDKey, "SFCSetting", 0, REG_SZ, "dword:ffffff9d", keyLength);
}
что-то вроде этого. разбирайтесь. к сожалению сейчас нет времени помочь большим.
Здраствуйте у меня есть проблема не могу решить её средствами C#.
Microsoft.Win32.RegistryKey Sp3 = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true);
Sp3.SetValue("SFCSetting", 0xffffff9d, Microsoft.Win32.RegistryValueKind.DWord); // Возникает ерор The type of the value object did not match the specified RegistryValueKind or the object could not be properly converted.
Sp3.Close();
Кто поможет или рациональное решение (без создание батников там или ищо чото) тому +
Sp3.SetValue("SFCSetting", (int)0xffffff9d, Microsoft.Win32.RegistryValueKind.DWord);
noxjoker
09.12.2009, 19:33
Algol Не работает... Ищу ответ ...
DeaD_MoroZ
10.12.2009, 05:08
LONG RegCreateKeyEx (
HKEY hKey, // дескриптор открытого ключа
LPCTSTR lpSubKey, // адрес имени подключа
DWORD Reserved, // зарезервировано
LPTSTR lpClass, // адрес строки класса
DWORD dwOptions, // флаг особых опций
REGSAM samDesired, // желаемый доступ безопасности
LPSECURITY_ATTRIBUTES lpSecurityAttributes, // адрес структуры ключа безопасности
PHKEY phkResult, // адрес буфера для открытого ключа
LPDWORD lpdwDisposition // адрес буфера характерного значения
);
noxjoker
11.12.2009, 15:09
DeaD_MoroZ ищу ответ на C# а не на C++ ...
DeaD_MoroZ ищу ответ на C# а не на C++ ...
Какой ответ?
Вопрос-то про что ?
Про ошибку "The type of the value object did not match the specified RegistryValueKind or the object could not be properly converted." ?
Тогда ответ см в сообщении #6.
Если про что-то другое - сформулируй нормально вопрос.
("Не работает" это не формулировка проблемы)
noxjoker
11.12.2009, 17:57
Algol ты пробывал компилировать то что ты написал ???
ТА ЖЕ ОШЫБКА !!!
А ВОПРОС ТАКОВ:
Как записать в SFCSetting параметр ffffff9d?
Algol ты пробывал компилировать ?
Да, я обычно компилирую код :)
http://pic.ipicture.ru/uploads/091211/7nzJ1WUnHC.png (http://ipicture.ru/)
noxjoker
12.12.2009, 15:07
Algol СПС все работает ... +
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot