PDA

نسخه کامل مشاهده نسخه کامل : چند سوال در مورد رجيستري لطفا جواب بديد



mehdionline
22-08-2005, 17:39
با سلام و خسته نباشید به شما مدیران عزیز
من یک سوال در مورد registry ویندوز دارم که اگر مدیران و کاربران سایت لطف کنند و جواب من را بدهند خیلی ممنون میشم.
من میخواهم یک فایل به صورت مثلا test.reg درست کنم به صورتی که هنگامی که آن را اجرا میکنیم اطلاعات آن که به صورت کلیدهای DWORD و غیره را مثلا به آدرس زیر ارسال کنم.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\BattC]
اما حالا فرض کنید که مثلا در ویندوز من در این کلید دو عدد زیر کلید به اسمهای 1 و 2 وجود دارد در حالی که در ویندوز دوستم 3 زیر کلید و در ویندوز دوست اون 5 تا و همینطور به صورت مختلف
حالا من میخوام با استفاده از یک کد کاری کنم که کدهای من که در فایل test.reg و جود دارد به تمامی زیر کلید های که در آدرس زیر وجود دارد کپی شود
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\BattC]
مثلا اگر در سیستمی 3 تا زیر کلید هست در هر سه کلید و اگر دز سیستمی دیگر زیر این آدرس کلیدهای بیشتری با نامهای دیگر وجود داشت در تمام آنها اطلاعات من کپی شود.
به عبارتی اطلاعات من در تمام زیر کلیدهای BattC از آدرس بالا کپی شوند حالا با هر نامی که باشند.
بعدش چه طوری میتونم در فایل test.reg که درست کردم کدی بنویسم که مثلا با اجرا کردنش یک سری از اطلاعات registry حذف بشه
از دوستانی که من را در این امر یاری کنند از پیش تشکر میکنم.
مهدی منصوری
mmansoore@yahoo.com
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

mehdionline
22-08-2005, 19:49
اگر جوابم رو بديد ممنون ميشم

Beelzebub
22-08-2005, 23:44
خوب دوست من من يه چندتا نكته در مورد reg فايلها بگم

اول اينكه فايلهاي reg قادر به پاك كردن مقادير نيستند و فقط براي تغيير و
اضافه كردن مقادير مورد استفاده قرار مي گيره(البته بگم مي تونه يه كليد رو كامل با تمام مقادير حدف كنه)
بهتره براي اينكار از فرمان reg.exe ‌در يه batch فايل استفاده كني(اگه توضيح بيشتري دو مورد reg.exe خواستي بگو تا بگم)

دوم اگه درست فهميده باشم شما مي خواي در تمام زير كليدهاي يه
كليد مقاديري رو اضافه كنيد كه باز بايد بگم فايلهاي reg قادر به اين
كار نيستن
بهتر از اسكريپتها استفاده كني(اگه بلد نيستي يه كتاب بخر ياد بگير) خودمم بلد نيستم وگرنه كمكت مي كردم

ديگه همين

mehdionline
23-08-2005, 09:46
راجب reg.exe اگر زحمتي نيست كمي توضيح بديد بعد براي دومي من چه كتابي بايد بخرم؟ :?:

Beelzebub
23-08-2005, 12:17
من كتاب مشخصي نمي شناسم شما بايد يه كتاب در بار VBscript‌ يا Jscript پيدا كني
حالا يا از اينترنت كه بيشتر انگليسي است يا از يه جا بخري در ضمن فرقي نمي كنه كدومو بخوني تغريبا يه جورن


و در مورد فرمان reg.exe :

اين فرمان كه بصورت پيش فرض دز ويندوزXP نصب شده براي اين است كه شما بخاي
از طريق خط فرمان رجيستري رو تغيير بدين دارياي اين فرمانها است(مي تونيد با وارد كردن فرمان reg در خط فرمان اينارو ببينيد)

[ QUERY | ADD | DELETE | COPY |
SAVE | LOAD | UNLOAD | RESTORE |
COMPARE | EXPORT | IMPORT]

خوب من همه اينا رو توضيح نمي دم فقط چندتا شو كه فكر مي كنم بدرت بخوره رو توضيح مي دم
اگه بقيه رو هم خواستي بگو اگه حسي بود مي نويسم.
خوب بريم سره فرمانها

اولين فرمان ADD :
اين دستور براي اضافه كردن يا تغيير يه مقدار در رجيستري است

ساختار فرمان:
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]

توضيحات:
KeyNmae : مسير كليد است كه با كليد ريشه آغاز مي شه و از حروف اختصاري HKCR ، HKCU، HKLM ، HKU براي صرف وقت و خانايي كد استفاده كنيد

/v value : مقداري را اضافه يا تغيير مي ده

/ve : مقداز پيش فرض را تغيير مي دهد

/t type : نوع مقدار رو تغيير مي دهد كه مي تونه اينا باشه:
[ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
REG_NONE | REG_EXPAND_SZ ]
/s separator : هنگامي كه از REG_MULTI_SZ استفاده مي كنيد. نشان مي دهد
كه از چه كاراكتري براي جدا كردن رشته ها از يكديگر استفاده شده. كه بظور پيش فرض \0 يا null است

/d data‌: دادهاي كه به مقدار جديد يا مقدار موجود منسوب مي شه.

/f : اگه اينو رو قرار نديم موقعي كه مقداري وجود داره و ما مي خواهيم تغيير دهيم از ما سوال مي كنه كه تغييرات انجام بشه

چنتا مثال :

REG ADD HKLM\SOFTWARE\P30world /v Data /t REG_DWORD /d 100
REG ADD HKLM\SOFTWARE\P30world /ve 200
REG ADD HKLM\SOFTWARE\WWW


دومين فرمان QUERY ‌:

اين دستور براي نمايش دادن داده يه مقدار يا نمايش تمام مقادير يه كليد است

ساختار دستور:
REG QUERY KeyName [/v ValueName | /ve] [/s]

توضيحات :
KeyName : اين توضيحش مثل قبليه. فقط اگه اين قسمت باشه تمام مقادير كليد رو نشون ميده

/v ValueName : براي نشان دادن داده اي كه در يه مقدار قرار دارد

/ve : مقدار پيش فرض كليد رو نشون مي ده

/s : براي نمايش تمام زير كليدها و مقادير يك كليد


مثال :
REG QUERY HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion /s
REG QUERY HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion /v BuildLab

سومين فرمان DELETE :

ساختار دستور:
REG DELETE KeyName [/v ValueName | /ve | /va] [/f]

توضيحات:
KeyName : توضيح مثل قبل

: /v ValueName مقدار رو ار كليد حذف مي كنه

/ve : مقدار پيش فرض كليد رو حذف مي كنه

/va : تمام مقادي يه كليد رو كذف مي كنه

/f :‌اگه قرار داده نشه قبل پاك كردن از شما سوال خواهد كرد

مثال :
REG QUERY HKLM\SOFTWARE\Microsoft\Windows\yeklid /va

خوب فكر كنم كافي باشه خودمم خسته شدم
اينم در آخر بگم اين دستورات رو مي توني از خط فرمان اجرا كني
يا در notepad بنويسي و با پسوند bat ذخيره كني
موفق باشي