یادداشت های برنامه نویس

تجربیات و سورس کدهای رایگان در زمینه برنامه نویسی دلفی و دیتابیس ها

یادداشت های برنامه نویس

تجربیات و سورس کدهای رایگان در زمینه برنامه نویسی دلفی و دیتابیس ها

بدست آوردن نام هاست از طریق IP

با سلام

بدست آوردن نام Host از طریق IP


function IPAddrToName(IPAddr: string): string;
var
  SockAddrIn: TSockAddrIn;
  HostEnt: PHostEnt;
  WSAData: TWSAData;
begin
  WSAStartup($101, WSAData);
  SockAddrIn.sin_addr.s_addr:=inet_addr(PChar(IPAddr));
  HostEnt:= GetHostByAddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
  if HostEnt<>nil then
  begin
    Rresult:=StrPas(Hostent^.h_name)
  end
  else
  begin
    Result:='';
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption:=IPAddrToName(Edit1.Text);
end;

تبریک تولد امام زمان (عج)

طلوع نزدیک است اگر بخواهیم
ظهور تو زیباتر از ظهور همه‌ی زیبایی‌هاست
چشم به راه زیباترین بهاریم
خدایا انتظار چقدر دیر می‌گذرد
با صد نگاه خسته، صدا می‌زنیم تو را
بیایید همه منتظر آمدنش شویم



نمایش پنجره انتخاب پوشه

نمایش دیالوگ Folderdialog


uses shlobj;

function FindFolder(Handle: THandle;
  Title: string = 'Please specify a folder'): string;
var
  lpItemID: PItemIDList;
  BrowseInfo: TBrowseInfo;
  DisplayName: array[0..MAX_PATH] of char;
  TempPath: array[0..MAX_PATH] of char;
begin
  Result := '';
  FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
  BrowseInfo.hwndOwner := Handle;
  BrowseInfo.pszDisplayName := @DisplayName;
  BrowseInfo.lpszTitle := PChar(Title);
  BrowseInfo.ulFlags := BIF_RETURNONLYFSDIRS;
  lpItemID := SHBrowseForFolder(BrowseInfo);
  if lpItemId <> nil then
  begin
    SHGetPathFromIDList(lpItemID, TempPath);
    Result := TempPath;
    GlobalFreePtr(lpItemID);
  end;
end;

قرار دادن آیتم در منوی استارت

با سلام

اگه قصد دارید توسط کدنویسی یک لینک در منوی استارت قرار بدید از این کد میتونید استفاده کنید


 
uses JclShell, ShlObj;
 
procedure TForm1.Button1Click(Sender: TObject);
var ShellLink: TShellLink;
begin
  CoInitialize(nil);
  with ShellLink do begin
    Arguments:='';
    IdList:=nil;
    WorkingDirectory:='c:\test';
    Target:='c:\test\test.exe';
    Description:='Testprogramm';
  end;
  ShellLinkCreateSystem(ShellLink, CSIDL_COMMON_STARTMENU,
    'Program\Saberi\Project.lnk');
  ShellLinkFree(ShellLink);
end;

تغییر پشت زمینه دستکاپ

با سلام خدمت دوستان


بعد مدت ها گفتیم یک پستی بزنیم که بگیم هنوز زنده ایم!


  if not SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar('Addresssssss'),
      SPIF_SENDCHANGE OR SPIF_UPDATEINIFILE) then
    RaiseLastOSError;

پاسخ سوالات دوستان

با عرض سلام خدمت همه همراهان عزیز و عرض تسلیت به مناسبت اربعین و رحلت پیامبر(ص) و شهادت امام حسن مجتبی(ع) و امام رضا (ع)


دوستان ببخشید چون مدت زیادی نبودم


جواب دوستی که خودش زیور عالم معرفی کرده بگم برای خروجی گرفتن از دیتابیس راه های زیادی وجود از برنامه دلفی،

از dump گرفته تا خواندن از دیتابیس و نوشتن در دیتابیس دیگر

این سوال مال خیلی وقته پیش حتما جواب گرفته!


جواب آقای نصراله معتقد حقیقی

بله از نسخه xe5 به بعد اضافه شده اما چون در دلفی الان فقط 2 -3 نسخه ارائه شده هنوز باگ های زیادی و جا نیافتاده است به مرور زمان باید اشکالاتش رفع بشه تا بشه بصورت حرفه ای ازش استفاده کرد

جواب سوال جناب رییسی

یکی از دوستان چنین سوال پرسیده

اب اقای صابری سلام
میخوام یه دیتا گرید داشته باشم که خودم ستونهای اون رو تعریف کنم توی هر ردیف یک عکس بزارم و چند تا تکست روی اون مثل توی فست ریپورت برای گزارشگیری
اگه کامپوننتی که این کارو انجام بده لطفا راهنمایی کنید

اگه منظورت همون DBGRID هست که معمولا همه شون چنین قابلیتی دارند.اگه منظورت یک چیزی خارج از بحث دیتابیس هست بهترین گزینه Stringgrid از مجموعه TMS است.تمام امکاناتی که می خوای داره