محمد مقصودلو - کدهای آماده دلفی افزایش بازدید - افزایش بازدید و ترافیک سایت شما
هرکس بسیار به درس و مباحثه علم بپردازد، آنچه را فرا گرفته از یاد نبرد وآنچه را ندانسته فرا گیرد . [امام علی علیه السلام]
کدهای آماده دلفی

procedure TForm1.Button1Click(Sender: T);

const CLAVE =
 
"\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";

var
  reg    : TRegistry;
  Lista  : TStringList;
  Lista2 : TStringList;
  i,n    : integer;

begin
 {Create temporal things}
  reg    := TRegistry.Create;
  Lista  := TStringList.Create;
  Lista2 := TStringList.Create;

 
{Load all the subkeys}
 with Reg do
 begin
    RootKey := HKEY_LOCAL_MACHINE;
    OpenKey(CLAVE,false);
    GetKeyNames(Lista);
 
end;

 
{Load all the Value Names}
 for i := 0 to Lista.Count -1 do begin
    reg.OpenKey(CLAVE +
"\" +Lista.Strings[i],false);
    reg.GetValueNames(Lista2);

   
{We will show only if there is "DisplayName"}
    n:=Lista2.IndexOf("DisplayName");
   
if (n <> -1) and (Lista2.IndexOf("UninstallString")<>-1) then
 begin
 {DisplayName+UnInstallString}
      Memo1.Lines.Append ( reg.ReadString(Lista2.Strings[n])+"-"+
        reg.ReadString(Lista2.Strings[Lista2.IndexOf(
"UninstallString")]) );
   
end;
 
end;
 
{Free temporals}
  Lista.Free;
  Lista2.Free;
  reg.CloseKey;
  reg.Destroy;
end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)


 



محمد مقصودلو ::: شنبه 87/4/29::: ساعت 11:16 صبح

procedure TForm1.Button1Click(Sender: T);
var
   PIDL:PItemIDList;
   Info:TShellExecuteInfo;
   pInfo:PShellExecuteInfo;
   WaitCode:DWord;
begin
 {get PIDL of the virtual folder}
   SHGetSpecialFolderLocation(Handle,
                              CSIDL_PRINTERS,
                              PIDL);
  
{Pointer to Info}
   pInfo:=@Info;
  
{Fill info}
 with Info do
 begin
    cbSize:=SizeOf(Info);
    fMask:=SEE_MASK_NOCLOSEPROCESS+
           SEE_MASK_IDLIST;
    wnd:=Handle;
    lpVerb:=
nil;
    lpFile:=
nil;
   
{Executable parameters}
    lpParameters:=nil;
    lpDirectory:=
nil;
    nShow:=SW_ShowNormal;
    hInstApp:=0;
    lpIDList:=PIDL;
  
end;
  
{Execute}
   ShellExecuteEx(pInfo);
  
{Wait to finish}
 repeat
    WaitCode := WaitForSingle(Info.hProcess,500);
    Application.ProcessMessages;
  
until (WaitCode <> WAIT_TIMEOUT);
end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)



محمد مقصودلو ::: شنبه 87/4/29::: ساعت 11:15 صبح

نحوه اضافه کردن یک ستون برای شماره ردیف در گرید 

{+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

1. create new blank field in dbgrid

2. rename the title with "No"

3. put this code in OnDrawColumncell

4. Now your Grid has a row number

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++}

procedure TForm1.DBGrid1DrawColumnCell(Sender: T; const Rect: TRect;

DataCol: Integer; Column: TColumn; State: TGridDrawState);

begin

if DataSource1.DataSet.RecNo > 0 then

begin

if Column.Title.Caption = "No" then

DBGrid1.Canvas.TextOut(Rect.Left + 2, Rect.Top, IntToStr(DataSource1.DataSet.RecNo));

end;

end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)



محمد مقصودلو ::: شنبه 87/4/29::: ساعت 11:14 صبح

نحوه افزدون کابر - تعریف کاربر برای لاگین در بانک اس کیو ال سرور

procedure TForm1.Button1Click(Sender: T);

begin

ADOConnection1.Connected := True;

ADOCommand1.CommandText := "Exec SP_AddLogin " + QuotedStr("UserName") +

"," + QuotedStr("Password") + "," + QuotedStr("Database Name") + "," +

QuotedStr("English") + ";";

ADOCommand1.Execute;

end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)



محمد مقصودلو ::: شنبه 87/4/29::: ساعت 11:13 صبح

 

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

procedure TForm1.Button1Click(Sender: T);
type
  TDLLRegisterServer   = function: HResult stdcall;
var
  MangoOCX  : THandle;
  Registrar : TDllRegisterServer;
begin
  {Cargamos el OCX}
  {Load the OCX}
  MangoOCX:= LoadLibrary("c:\windows\system\html.ocx");
 
{Hallamos la direccion de la funcion para registrar el OCX}
  {Get the address to register the OCX}
  Registrar:= GetProcAddress(MangoOCX, "DllRegisterServer");
 
{Llamamos a la funci?n}
  {Call to the function}
  if Registrar <> 0 then ShowMessage("Error");
 
{Liberamos el OCX}
  {Free the OCX}
  FreeLibrary(MangoOCX);
end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)




محمد مقصودلو ::: سه شنبه 87/4/25::: ساعت 11:39 صبح

با استفاده از این تابع شما می توانید دو رشته متنی را با هم مقایسه کنید البته با قابلیت استفاده از علامت های جایگزین * و ؟ جهت مقایسه دو رشته متنی

 function MatchStrings(source, pattern: String): Boolean;
var
   pSource: array [0..255] of Char;
   pPattern:
array [0..255] of Char;

  
function MatchPattern(element, pattern: PChar): Boolean;

    
function IsPatternWild(pattern: PChar): Boolean;
    
var
       t: Integer;
    
begin
       Result := StrScan(pattern,"*") <> nil;
      
if not Result then Result := StrScan(pattern,"?") <> nil;
    
end;

  
begin
     if 0 = StrComp(pattern,"*") then
       Result := True
    
else if (element^ = Chr(0)) and (pattern^ <> Chr(0)) then
       Result := False
    
else if element^ = Chr(0) then
       Result := True
    
else begin
       case pattern^ of
       "*": if MatchPattern(element,@pattern[1]) then
              Result := True
           
else
              Result := MatchPattern(@element[1],pattern);
      
"?": Result := MatchPattern(@element[1],@pattern[1]);
      
else
         if element^ = pattern^ then
           Result := MatchPattern(@element[1],@pattern[1])
        
else
           Result := False;
      
end;
    
end;
  
end;

begin
   StrPCopy(pSource,source);
   StrPCopy(pPattern,pattern);
   Result := MatchPattern(pSource,pPattern);
end;


محمد مقصودلو ::: سه شنبه 87/4/25::: ساعت 11:37 صبح

uses

ComObj;
function CompactAndRepair(DB: string): Boolean; {DB = Path to Access Database} var v: OLEvariant; begin Result := True; try v := CreateOLE("JRO.JetEngine"); try V.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+DB, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+DB+"x;Jet OLEDB:Engine Type=5"); DeleteFile(DB); RenameFile(DB+"x",DB); finally V := Unassigned; end; except Result := False; end; end;


محمد مقصودلو ::: سه شنبه 87/4/25::: ساعت 11:36 صبح

با استفاده از این تابع می توانید یک فایل را به وسیله آدرس دهی مکان جاری و مکانی که می خواهید این فایل را در آن کپی کنید استفاده نمایید

 {This way uses a File stream.}

Procedure FileCopy( Const sourcefilename, targetfilename: String );

Var

S, T: TFileStream;

Begin

S := TFileStream.Create( sourcefilename, fmOpenRead );

try

T := TFileStream.Create( targetfilename,

fmOpenWrite or fmCreate );

try

T.CopyFrom(S, S.Size ) ;

finally

T.Free;

end;

finally

S.Free;

end;

End



محمد مقصودلو ::: دوشنبه 87/4/24::: ساعت 9:29 صبح

کپی کردن تاریخ یک فایل بر اساس تاریخ یک فایل دیگر

procedure CopyFileDate(const Source, Dest: String);
var
  SourceHand, DestHand: word;
begin
  SourceHand := FileOpen(Source, fmOutput);       { open source file }
 
  DestHand := FileOpen(Dest, fmInput);            { open dest file }
  FileSetDate(DestHand, FileGetDate(SourceHand)); { get/set date }
  FileClose(SourceHand);                          { close source file }
  FileClose(DestHand);                            { close dest file }
end

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)



محمد مقصودلو ::: دوشنبه 87/4/24::: ساعت 9:17 صبح

function GetFileSizeOnDisk(const FileName: TFileName): Cardinal;
var
spc,bps,nofc,tnoc : Cardinal;
ClusterSize,
ClustersCount,
FileSize : Cardinal;
begin
Result := 0;
if not FileExists(FileName) then
Exit;
//Call GetDiskFreeSpace to find out disk cluster size.
if not GetDiskFreeSpace(PAnsiChar(ExtractFileDrive(FileNa me)),spc,bps,nofc,tnoc) then
Exit;
//Cluster size = Bytes Per Sector * Sectors Per Cluster
ClusterSize := bps * spc;
//Get actual file size.
FileSize := GetCompressedFileSize(PAnsiChar(FileName),nil);
ClustersCount := FileSize div ClusterSize;
//Calculate file size on the disk.
Result := ClustersCount * ClusterSize;
//if the file occupies a cluster partially, add cluster size to file size, because
//a cluster is the smallest unit of disk which is accesible.
if FileSize > Result then
Inc(Result,ClusterSize);
end;

برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)



محمد مقصودلو ::: دوشنبه 87/4/24::: ساعت 9:15 صبح

<   <<   11   12   13   14      >

لیست کل یادداشت های این وبلاگ

>> بازدیدهای وبلاگ <<
بازدید امروز: 11
بازدید دیروز: 50
کل بازدید :88608

>> درباره خودم <<
کدهای آماده دلفی
محمد مقصودلو
در این وبلاگ سعی میکنم مطالب مربوط به برنامه نویسی دلفی ، پاسکال و گرافیک رایانه ای 2 بعدی و 3 بعدی را به روز کنم منتظر سوالات شما نیز هستم

>>تست سرعت تایپ<<

>> پیوندهای روزانه <<

>>فهرست موضوعی یادداشت ها<<

>>آرشیو شده ها<<

>>لوگوی وبلاگ من<<
کدهای آماده دلفی

>>لوگوی دوستان<<



>>اشتراک در خبرنامه<<
 

>>طراح قالب<<


>>ذکر روزهای هفته<<

>>جستجوگر وبلاگها<<

>>ساعت<<

>> اخبار فناوری<<

>>جدیدترین اس ام اس های اینترنت<<

>>فال حافظ<<

>>دیکشنری آنلاین<<
-

>>جک یا لطیفه<<

>>هواشناسی<<

>>تاریخ و ساعت<<
یکشنبه 04/4/15 ساعت 1:10 عصر