الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تغيير قيمه الريجيستري

مغلق
بدأه apple في 3 مايو 2007 · 6 رد · 668 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عاوز اكتب كود يغير لي قيمه احد ملفات الريجيستري الخاص بتوقيف عمل ال USB ports

الريجيستري موجود في:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\USB

Entry: DisableSelectiveSuspend

Type: DWORD

Value: 1 disables selective suspend. 0 enables selective suspend

أي فكره؟؟

#3

لازم برنامج عن طريق الكود

هل من الممكن او لأ؟؟

#4

هل من الممكن مثلا اعمل create لملف Regواعمل له pin في الدايكروتري تبعه باستخدام الكود؟

هل هذا الشيء صعب بالنسبه للغة السي شارب ومتوفر في غيرها؟؟

تم تعديل هذه المشاركة بواسطة apple في 4 مايو 2007 في 14:11

#5

السلام عليكم

هذه كافة APIs المتوفرة في ويندوز والتي تمكن من تغير قيمة ما في الريجيستري طبعا عندما تتوفر إمكانية ذلك Access Permission

 // bit masks for registry key open access permissions
		const int OpenRegKeyRead = 0x00020019;
		const int OpenRegKeyWrite = 0x00020006;

		// FIXME must be a way to determin this dynamically?
		const int Int32ByteSize = 4;

		// FIXME this is hard coded on Mono, can it be determined dynamically? 
		readonly int NativeBytesPerCharacter = Marshal.SystemDefaultCharSize;

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegCreateKey")]
		public static extern int RegCreateKey(IntPtr keyBase, string keyName, out IntPtr keyHandle);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegCloseKey")]
		public static extern int RegCloseKey(IntPtr keyHandle);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode)]
		public static extern int RegConnectRegistry(string machineName, IntPtr hKey,
				out IntPtr keyHandle);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegFlushKey")]
		private static extern int RegFlushKey(IntPtr keyHandle);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegOpenKeyEx")]
		public static extern int RegOpenKeyEx(IntPtr keyBase,
				string keyName, IntPtr reserved, int access,
				out IntPtr keyHandle);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegDeleteKey")]
		public static extern int RegDeleteKey(IntPtr keyHandle, string valueName);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegDeleteValue")]
		public static extern int RegDeleteValue(IntPtr keyHandle, string valueName);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegEnumKey")]
		public static extern int RegEnumKey(IntPtr keyBase, int index, StringBuilder nameBuffer, int bufferLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegEnumValue")]
		public static extern int RegEnumValue(IntPtr keyBase,
				int index, StringBuilder nameBuffer,
				ref int nameLength, IntPtr reserved,
				ref RegistryValueKind type, IntPtr data, IntPtr dataLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegSetValueEx")]
		public static extern int RegSetValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, RegistryValueKind type,
				StringBuilder data, int rawDataLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegSetValueEx")]
		public static extern int RegSetValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, RegistryValueKind type,
				string data, int rawDataLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegSetValueEx")]
		public static extern int RegSetValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, RegistryValueKind type,
				byte[] rawData, int rawDataLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegSetValueEx")]
		public static extern int RegSetValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, RegistryValueKind type,
				ref int data, int rawDataLength);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegQueryValueEx")]
		public static extern int RegQueryValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, ref RegistryValueKind type,
				IntPtr zero, ref int dataSize);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegQueryValueEx")]
		public static extern int RegQueryValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, ref RegistryValueKind type,
				[Out] byte[] data, ref int dataSize);

		[DllImport("advapi32.dll", CharSet = CharSet.Unicode, EntryPoint = "RegQueryValueEx")]
		public static extern int RegQueryValueEx(IntPtr keyBase,
				string valueName, IntPtr reserved, ref RegistryValueKind type,
				ref int data, ref int dataSize);

لا تنسى إضافة

using Microsoft.Win32;

للمزيد من التفاصيل يمكن الإطلاع على هذا الرابط أو هذا

والله أعلم

#6

الله يجزيك خير ben_liiad وكثر الله من امثالك

طيب ممكن طريقه عملها كملف reg عادي؟؟

#7

السلام عليكم

لم أجد هذ المجلد

اقتباس
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\USB

Entry: DisableSelectiveSuspend

Type: DWORD

بل وجدت usbhub و usbstor و usb_rndisy

على كل بإمكانك الذهاب الى مكان الريجيستري الذي أشرت إليه وقم بإختيار Export Registry file في (Regisrtry (menu

إثر حفظه في مكان ما إفتحه بnotepad وغير الحقل الذي تريده وأحفظ الملف دون تغير نوعه(reg) ثم قم بتشغيله و إطلع مجددا على الريجيستري لتجد التغير الذي قمت به

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…