Операцион тизим ва қурилмалар билан ишлаш Компьютер имкониятлари тўғрисидаги тизимли маълумотлар


Операцион тизим ишини тўхтатиш буйруғи


Download 334 Kb.
bet8/18
Sana08.01.2023
Hajmi334 Kb.
#1084303
1   ...   4   5   6   7   8   9   10   11   ...   18
Bog'liq
Система (таржима)

Операцион тизим ишини тўхтатиш буйруғи.

ExitWindowsEx(EWX_REBOOT or ewx_force,0);





Операцион тизимни қайта юклаш буйруғи

ExitWindowsEx(EWX_FORCE or ewx_force,0);



Компьютерни ўчириш ойнасини чақириш

SendMessage (FindWindow ('Progman', 'Program Manager'), WM_CLOSE, 0, 0);


Натижада қуйидаги ойна ҳосил бўлади:





Компьютер номини аниқлаш


uses Windows;


function GetComputerNetName: string;
var
buffer: array[0..255] of char;
size: dword;
begin
size := 256;
if GetComputerName(buffer, size) then
Result := buffer
else
Result := ''
end;


Фойдаланувчи номини аниқлаш


function GetUserFromWindows: string;
var
UserName : string;
UserNameLen : Dword;
begin
UserNameLen := 255;
SetLength(userName, UserNameLen);
if GetUserName(PChar(UserName), UserNameLen) then
Result := Copy(UserName,1,UserNameLen - 1)
else
Result := 'Unknown';
end;
Сана вақт хусусияти ойнасини чиқариш

Uses ShellAPI;



ShellExecute(Handle, 'open', 'control', 'date/time', nil, SW_SHOW);

Натижада қуйидаги ойна ҳосил бўлади:







Монитор ва экран


Экран хусусияти ойнасини кўрсатиш



uses ShellAPI;


function GetSystemDir: TFileName;
var
SysDir: array [0..MAX_PATH-1] of char;
begin
SetString(Result, SysDir, GetSystemDirectory(SysDir, MAX_PATH));
if Result = '' then
raise Exception.Create(SysErrorMessage(GetLastError));
end;


procedure TForm1.Button1Click(Sender: TObject);
var
x: Tfilename;
begin
x := getsystemdir;
ShellExecute(Form11.Handle, 'open', Pchar('rundll32.exe'),
'shell32.dll,Control_RunDLL Desk.cpl,@0,3', Pchar(X), SW_normal);
end;


Экран расмини (суратини) олиш


procedure TForm1.Button1Click(Sender: TObject);
var
DeskTop: TCanvas;
begin
DeskTop := TCanvas.Create;
try
with DeskTop do
Handle := GetWindowDC(GetDesktopWindow);
with PaintBox1.Canvas do
CopyRect(Rect(0, 0, 200, 200),
DeskTop,
Rect(0, 0, 200, 200))
finally
DeskTop.Free;
end
end;


Экранни ёки экранни бир қисмини TBitmap га олиш


var
bmp: TBitmap;
DC: HDC;
begin
bmp:=TBitmap.Create;
bmp.Height:=Screen.Height;
bmp.Width:=Screen.Width;
DC:=GetDC(0); //Экран дескpиптоpи
bitblt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
DC, 0, 0, SRCCOPY);
bmp.SaveToFile('Screen.bmp');
ReleaseDC(0, DC);
end;


Мониторни созлаш

Баъзан, дастурда мониторнинг аниқ параметрлари билан ишлашга тўғри келади. Масалан ўлчам, ранг қуввати, частота. Жорий экран ўлчамини аниқлаш осон. Унда TScreen объектидаги Width ва Height майдонлари қийматларини олиш қийин эмас. Лекин, қандайдир ўзингиз учун керакли ўлчамни ўрнатиш учун эса, Api: ChangeDisplaySettings функциясидан фойдаланиш зарур. Агар, дастур иши тугагач, экраннинг жорий созлов параметрларини яна қайтариб ўрнатиш керак бўлса, унда ўзгазтиришдан олдин экраннинг жорий параметрларини сақлаб қўйиш керак бўлади. Масалан, қуйидагича:






Download 334 Kb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   ...   18




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling