Linklerin Görülmesine İzin Verilmiyor
Register or LoginForm1'in aynisini printerden çikartma
Form1.Print;
O anki sürücünün kapasitesini ve sürücüdeki bos yer miktarini bulmak;
DiskFree(0) //o anki sürücüdeki bos yer miktarini byte cinsinden döndürür.
DiskSize(0) //o anki sürücünün kapasitesini byte cinsinden döndürür.
DiskSize(0) div 1024 //o anki sürücünün kapasitesini KB cinsinden döndürür.
Bir menü ögesinin enabled özelligini false yapmak;
mainmenu1.items[0].items[1].enabled:=False;
Listbox veya Combobox'ta seçili bir veya birden fazla ögeyi seçilmemis duruma getirmek için;
Listbox1.itemindex:=-1;
Listbox, Combobox ve Memo'ya bir seferde ekleme yapmak;
Listbox1.items.SetText('aaa'#13'bbb'#13'ccc');
Memo1.Lines.SetText('aaa'#13'bbb'#13'ccc');
Harddiskin seri numarasinin bulunmasi;
procedure TForm1.Button1Click(Sender: TObject);
var
Volume******Number : DWORD;
MaximumComponentLength : DWORD;
FileSystemFlags : DWORD;
******Number : string;
begin
GetVolumeInformation('C:\',nil,0,@Volume******Numb er,MaximumComponentLength,FileSystemFlags,nil, 0);
******Number := IntToHex(HiWord(Volume******Number), 4) + '-' +IntToHex(LoWord(Volume******Number), 4);
Memo1.Lines.Add(******Number);
end;
Linklerin Görülmesine İzin Verilmiyor
Register or LoginBir string'in basindaki ve sonundaki bosluklari atmak için;
Trim(string)
TrimLeft (string) //stringin sadece basindaki bosluklari atmak için
TrimRight (string) //stringin sadece sonundaki bosluklari atmak için
Linklerin Görülmesine İzin Verilmiyor
Register or Loginsifreli bir table için programin sifre istememesi için;
Table'in Active özelligini False yapin ve Form'un OnCreate olayina asagidaki kodu ekleyin
Session.AddPassword('sifre');
Table1.Active:=True;
Pencereyi minimize etmek;
Application.Minimize; //taskbar'a minimize
CloseWindow(handle)
WindowState := wsMinimized;
Linklerin Görülmesine İzin Verilmiyor
Register or LoginWindows'u kapatmak veya yeniden baslatmak(reboot);
var
i:dword;
begin
ExitWindowsEx(EWX_SHUTDOWN); //yeniden baslatmak için EWX_REBOOT
end;
Help menüsünden About kismina girin. Alt tusuna basili tutarak TEAM veya DEVELOPERS yazin. Delphi'yi gelistirenlerin isimlerini görebilirsiniz. Database Desktop'tada Help menüsünden About kismina girin ve delphi yazin.
ico'dan bmp'ye çevirme;
var
Icon : TIcon;
Bitmap : TBitmap;
begin
Icon := TIcon.Create;
Bitmap := TBitmap.Create;
Icon.LoadFromFile('c:\picture.ico');
Bitmap.Width := Icon.Width;
Bitmap.Height := Icon.Height;
Bitmap.Canvas.Draw(0, 0, Icon );
Bitmap.SaveToFile('c:\picture.bmp');
Icon.Free;
Bitmap.Free;
end;
CD-Rom sürücüyü açmak ve kapamak;uses kismina MMSystem unitini ekleyin.
mciSendString('Set cdaudio door open wait', nil, 0, handle); //aç
mciSendString('Set cdaudio door closed wait', nil, 0, handle); //kapa
CapsLock ve Numlock tuslarini açip-kapama;
procedure TMyForm.Button1Click(Sender: TObject);
Var
KeyState : TKeyboardState;
begin
GetKeyboardState(KeyState);
if (KeyState[VK_CAPITAL] = 0) then
KeyState[VK_CAPITAL] := 1
else
KeyState[VK_CAPITAL] := 0;
SetKeyboardState(KeyState);
end;
Numlock tusu için VK_CAPITAL yerine VK_NUMLOCK yaziniz.
Menü'ye bitmap (resim) ekleme;procedure TForm1.FormCreate(Sender: TObject);
var
Bmp1 : TPicture;
begin
Bmp1 := TPicture.Create;
Bmp1.LoadFromFile('c:\deneme\turkey.bmp');
SetMenuItemBitmaps( deneme1.Handle,
0,
MF_BYPOSITION,
Bmp1.Bitmap.Handle,
Bmp1.Bitmap.Handle);
end;
Alt + Tab ve Ctrl + Esc tuslarinin kullanilmaz hale getirilmesi;var
OldVal : LongInt;
begin
SystemParametersInfo (97, Word (True), @OldVal, 0)
//Word(False) ile kullanirsaniz tuslari tekrar kullanabilirsiniz.
Windows ve System klasörlerinin bulunmasi
procedure TForm1.Button1Click(Sender: TObject);
var
a : Array[0..144] of char;
begin
GetWindowsDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
GetSystemDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
end;
Speakerdan Beep sesi çikartmaMessageBeep(word(-1));
Belgeler menüsüne bir dosya ekleme
uses kismina ShlOBJ unitini ekleyin;
procedure TForm1.Button1Click(Sender: TObject);
var
s : string;
begin
s := 'C:\DownLoad\deneme.html';
SHAddToRecentDocs(SHARD_PATH, pChar(s));
end;
Belgeler menüsünü temizlemeuses kismina ShlOBJ unitini ekleyin;
SHAddToRecentDocs(SHARD_PATH, nil);
Bir web adresini açmauses kismina Shellapi unitini ekleyin;
ShellExecute(Handle,
'open',
'Linklerin Görülmesine İzin Verilmiyor
Register or
Login.********',
nil,
nil,
sw_ShowMaximized);
Bir DOS programini çalistirma ve çalismasi bitince penceresini kapatmaWinExec("command.com /c progdos.exe",sw_ShowNormal); //progdos.exe çalistiriliyor.
//eger ikinci paremetreyi sw_Hide yaparsaniz kullanici programin çalistigini görmez.
Uygulamanizin Görev Çubugundaki butonunu gizlemeUygulamanizin Görev Çubugundaki butonunu gizlemek için programinizin ana formunun OnCreate olayina asagidaki kodu yazin;
SetWindowLong(Application.Handle,GWL_EXSTYLE, WS_EX_TOOLWINDOW);
Ekran koruyucusunu kapatmak ve açmak//kapatmak için
SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,
0,
nil,
0);
//açmak için
SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,
1,
nil,
0);
Alt+F4 tus kombinasyonuyla programin kapanmamasi içinFormun OnCreate olayina;
KeyPreview := true;
Formun OnKeyDown olayina;
if ((ssAlt in Shift) and (Key = VK_F4)) then
Key := 0;
Hareketli imleç(animated cursor)leri kullanmaprocedure TForm1.Button1Click(Sender:TObject);
var
h : THandle;
begin
h := LoadImage(0,
'C:\TheWall\Magic.ani',
IMAGE_CURSOR,
0,
0,
LR_DEFAULTSIZE or
LR_LOADFROMFILE);
if h = 0 then ShowMessage('Cursor not loaded') else begin
Screen.Cursors[1] := h;
Form1.Cursor := 1;
end;
end;
Windows lisans bilgilerinin (isim ve sirket) bulunmasiuses kismina Registry unitini ekleyin;
procedure TForm1.Button1Click(Sender:TObject);
var
reg: TRegIniFile;
begin
reg := TRegIniFile.create('SOFTWARE\MICROSOFT\MS SETUP (ACME)\');
Memo1.Lines.Add(reg.ReadString('USER INFO',
'DefName',
'Emre ÖZ'));
Memo1.Lines.Add(reg.ReadString('USER INFO',
'DefCompany',
'Bilgisayar Bilimleri Müh.'));
reg.free;
end;
Çok Satirli ipucuprocedure TForm1.FormCreate(Sender: TObject);
begin
SpeedButton1.Hint:='Çok satirli ipucunu '+chr(13)+
'mutlaka denemelisiniz '+chr(13)+
'çok güzel';
end;
Bir klasörü ve onun altindaki tüm dosyalari ve klasörleri silmeAncak salt okunur (read only) özelligi olan ve kullanimda olan dosyalar silinmez.
procedure TForm1.Button1Click(Sender: TObject);
var
DirInfo: TSearchRec;
r : Integer;
begin
r := FindFirst('C:\Download\Test\*.*', FaAnyfile, DirInfo);
while r = 0 do begin
if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
(DirInfo.Attr and FaVolumeId <> FaVolumeID)) then
if DeleteFile(pChar('C:\Download\test\' + DirInfo.Name))
= false then
ShowMessage('C:\Download\test\'+DirInfo.Name+' silinemiyor!!!');
r := FindNext(DirInfo);
end;
SysUtils.FindClose(DirInfo);
if RemoveDirectory('C:\Download\Test') = false then
ShowMessage('C:\Download\test klasörü silinemiyor!!!');
end;
Baslat butonunu gizlemek veya kullanilmaz hale getirmekprocedure TForm1.Button1Click(Sender: TObject);
var
Rgn : hRgn;
begin
// Baslat butonunu gizle
Rgn := CreateRectRgn(0, 0, 0, 0);
SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWn d', nil),
0,
'Button',
nil),
Rgn,
true);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
//Gizlenen Baslat butonunu eski haline döndürmek için
SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWn d', nil),
0,
'Button',
nil),
0,
true);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
//Baslat butonunu kullanilmaz yap
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWn d', nil),
0,
'Button',
nil),
false);
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
//Kullanilmaz yapilan Baslat butonunu eski haline getirmek için
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWn d', nil),
0,
'Button',
nil),
true);
end;
Windows Gezginini istediginiz bir klasörle açmauses kismina Shellapi unitini ekleyin.
ShellExecute(0,
'explore',
'C:\WINDOWS', //açmak istediginiz dizin
nil,
nil,
SW_SHOWNORMAL);
Duvar kagidini degistirmekvar
s: string;
begin
s := 'c:\windows\athena.bmp';
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar(s),0);
Form'un arka kismina bir resmi dösemekBitmap: TBitmap;
procedure TForm1.FormCreate(Sender: TObject);
begin
Bitmap := TBitmap.Create;
Bitmap.LoadFromFile('C:\WINDOWS\cars.BMP');
end;
procedure TForm1.FormPaint(Sender: TObject);
var
X, Y, W, H: LongInt;
begin
with Bitmap do begin
W := Width;
H := Height;
end;
Y := 0;
while Y < Height do begin
X := 0;
while X < Width do begin
Canvas.Draw(X, Y, Bitmap);
Inc(X, W);
end;
Inc(Y, H);
end;
end;
Bir Denetim Masasi uygulamasini çalistirmakControl Panel uygulamalari Windows\System klasörü altinda bulunur. *.CPL uzantili dosyalardir. Bu uygulamalari Control.Exe programi ile çalistirabilirsiniz. Bazi Control Panel uygulamalari Windows\System klasöründe bulunmaz. Bunlarin ismini vererek çalistirabilirsiniz.
WinExec('C:\WINDOWS\CONTROL.EXE TIMEDATE.CPL', sw_ShowNormal);
WinExec('C:\WINDOWS\CONTROL.EXE MOUSE', sw_ShowNormal);
WinExec('C:\WINDOWS\CONTROL.EXE PRINTERS', sw_ShowNormal);
Sayilari virgüllerle yazmakSayi windows'unuz ayarina göre 12.345.678 veya 12,345,678 seklinde gösterilir.
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
begin
i := 12345678;
Memo1.Lines.Add(FormatFloat('#,', i));
Sistem Tarihini ve Saatini DegistirmekSistemin tarihini ve saatini degistirmek için SetLocalTime fonksiyonunu kullanabilirsiniz.
var
t:TSystemTime;
begin
t.wYear:=1998;
t.wMonth:=5;
t.wDay:=23;
t.wHour:=12;
t.wMinute:=34;
SetLocalTime(t);
end;
Fareyi mesgul sekilde göstermektry
Screen.Cursor := crHourGlass;
{buraya kodunuzu yazin...}
finally
Screen.Cursor := crDefault;
end;
Application.ProcessMessages;
Dos programi kullanmak için;WinExec('command.com /c progdos.exe',sw_ShowNormal);
Çevirme
Edit1.OnChange := NIL;
if Edit1.Text = 'Emre ÖZ' then
Edit1.Text := 'Emre';
Edit1.OnChange := Edit1Change;
ilk harf büyük digerleri küçükEdit1'e yazilan yazinin ilk harfini büyük diger harflerini küçük yapiyor.
var
OldStart : Integer;
begin
With Edit1 do
if Text <> '' then begin
OnChange := NIL;
OldStart := SelStart;
Text := UpperCase(Copy(Text,1,1))+LowerCase(Copy(Text,2,Le ngth(Text)));
SelStart := OldStart;
OnChange := Edit1Change;
end;
end;
Taskbar gizlemeprocedure hideTaskbar;
var
wndHandle : THandle;
wndClass : array[0..50] of Char;
begin
StrPCopy(@wndClass[0], 'Shell_TrayWnd');
wndHandle := FindWindow(@wndClass[0], nil);
ShowWindow(wndHandle, SW_HIDE);
end;
procedure showTaskbar;
var
wndHandle : THandle;
wndClass : array[0..50] of Char;
begin
StrPCopy(@wndClass[0], 'Shell_TrayWnd');
wndHandle := FindWindow(@wndClass[0], nil);
ShowWindow(wndHandle, SW_RESTORE);
end;
Ses kaydetmeBu program mikrofondan sesi alip bir wav dosyasi içine kayit ediyor.
uses
MMSystem,
WinCrt;
function RecordSound(MMSecs: LongInt): LongInt;
var
DeviceID: Word;
Return: LongInt;
MciOpen: TMCI_Open_Parms;
MciRecord: TMCI_Record_Parms;
MciPlay: TMCI_Play_Parms;
MciSave: TMCI_SaveParms;
Result2: LongInt;
Flags: Word;
begin
MciOpen.lpstrDeviceType := 'waveaudio';
MciOpen.lpstrElementName := '';
Flags := Mci_Open_Element or Mci_Open_Type;
Result2 := MciSendCommand(0, MCI_OPEN, Flags, LongInt(@MciOpen));
DeviceID := MciOpen.wDeviceId;
WriteLn('Kayit');
MciRecord.dwTo := MMSecs;
Flags := Mci_To or Mci_Wait;
Result2 := MciSendCommand(DeviceID, Mci_Record, Flags, LongInt(@MciRecord));
WriteLn('Durdur');
mciPlay.dwFrom := 0;
Flags := Mci_From or Mci_Wait;
MciSendCommand(DeviceId, Mci_Play, Flags, LongInt(@MciPlay));
mciSave.lpfileName := 'Ses.Wav';
Flags := MCI_Save_File or Mci_Wait;
Result := MciSendCommand(DeviceID, MCI_Save, Flags, LongInt(@MciSave));
MciSendCommand(DeviceID, Mci_Close, 0, LongInt(nil));
end;
begin
WriteLn('Basla');
RecordSound(10000);
WriteLn('Bitir');
DELPHi NASIL EXE YAPIYOR ?Delphi , delphi ile birlikte gelen dcc.exe ile projeleri derliyor. (Delphi 3'de dcc32.exe)
Örnek olarak
dcc /cw /b uls.dpr
komutlar :
/cw : Windows için,
/cd : Dos için,
/cp: Korumali mod için.
/b: Hepsini tekrar olustur,
/m: Hepsinin güncel oldugundan emin ol.
BRC Nedir ?Brc Res dosyalarini derliyor.
Bir res dosyasi açin ,(Notepad ile)
içine Icon ICON "emre.ico" yazin. (forumtr.ico dosyasi ayni klasörde bulunmali. )
BRC -r forumtr.RES olarak derleyin.
Delphideki projenizin basinada {$ forumtr.rc} yazin. Böylece ikon dosyalarini tasimadan kullana bilirsiniz.
Sadece icon degil , ayrica BITMAP,TEXT de kullana bilirsiniz.<!-- google_ad_section_end -->