PDA

View Full Version : سوال: تغییر در رجيستری ویندوز



mohsen_r
یک شنبه 03 مرداد 1389, 12:03 عصر
با سلام
من چطور مي تونم اين متن را در رجيستر تغيير بدم
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Win dows\WindowsUpdate]
"WUServer"="http://10.100.100.8"
"WUStatusServer"="http://10.100.100.8"
"TargetGroupEnabled"=dword:00000001
"TargetGroup"="IT Department"
"ElevateNonAdmins"=dword:00000000
البته گشتي هم زدم ولي متوجه نشدم
الان يك فايل reg ساختم و از داخل برنامه با shell اون را اجرا مي كنم ولي مي خوام ديگه فايل همراه نداشته باشه
با تشكر

mofrad
یک شنبه 03 مرداد 1389, 13:09 عصر
implementation
uses registry;
{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
var
myRegistry: TRegistry;
begin
myRegistry := TRegistry.Create(KEY_WRITE);
try
myRegistry.RootKey := HKEY_LOCAL_MACHINE;
if myRegistry.OpenKey('SOFTWARE\Policies\Microsoft\Wi ndows\WindowsUpdate',True) then
begin
myRegistry.WriteString('WUServer','http://10.100.100.8');
myRegistry.WriteString('WUStatusServer','http://10.100.100.8');
myRegistry.WriteInteger('TargetGroupEnabled',00000 001);
myRegistry.WriteString('TargetGroup','IT Department');
myRegistry.WriteInteger('ElevateNonAdmins',0000000 0);
end;
myRegistry.CloseKey;
finally
myRegistry.Free;
end;

end;

ببخشید! begin , end مربوط به if رو یادم رفته بود!!:لبخند:

mohsen_r
دوشنبه 04 مرداد 1389, 08:15 صبح
implementation
uses registry;
{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
var
myRegistry: TRegistry;
begin
myRegistry := TRegistry.Create(KEY_WRITE);
try
myRegistry.RootKey := HKEY_LOCAL_MACHINE;
if myRegistry.OpenKey('SOFTWARE\Policies\Microsoft\Wi ndows\WindowsUpdate',True) then
myRegistry.WriteString('WUServer','http://10.100.100.8');
myRegistry.WriteString('WUStatusServer','http://10.100.100.8');
myRegistry.WriteInteger('TargetGroupEnabled',00000 001);
myRegistry.WriteString('TargetGroup','IT Department');
myRegistry.WriteInteger('ElevateNonAdmins',0000000 0);
myRegistry.CloseKey;
finally
myRegistry.Free;
end;

end;

دو تا سوال
1 -بعد از if و قبل از closekey بايد begin , end بزاريم يا نه
2- اگه من يك متن ديگه هم داشته باشم مي تونم در ادامه بنويسم يعني قبل از closekey

pezhvakco
دوشنبه 04 مرداد 1389, 08:42 صبح
درود :
1 - بنا به دستور شرطی که جناب mofrad برای وجود مسیر نوشته begin , end لازمه .
2 - شما هر کار دیگه ایی که با این مسیر آدرس رجیستری داری می تونی انجام بدی تا هنگامی که تغییری در مسیر آدرسی ندادی .

فکر خوش .

mofrad
دوشنبه 04 مرداد 1389, 09:15 صبح
دو تا سوال
1 -بعد از if و قبل از closekey بايد begin , end بزاريم يا نه
2- اگه من يك متن ديگه هم داشته باشم مي تونم در ادامه بنويسم يعني قبل از closekey
1- حق با شماست. کد اصلاح شد.
2- همونطور که جناب pezhvakco گفتن. فقط اگر از نوع String است WriteString، اگر از نوع Dword است WriteInteger ، اگر از نوع Boolean است WriteBool و..... استفاده می شود.

MILAD HD
جمعه 05 فروردین 1390, 11:56 صبح
کسی میتونه توی مسیر زیر تغییر ایجاد کنه؟؟؟؟ چیزی بنویسه یا کلید جدید ایجاد کنه!!!؟؟؟؟؟؟
HKEY_CLASSES_ROOT\textfile\shell\open\command

من هر چی امتحان میکنم error میده!!!!!!! ( با ویندوز 7 و دلفی7)