유돌이

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

2008. 12. 24. 18:04 델파이

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure ListFiles(D,Name,SearchName : String);
  end;

var
  Form1: TForm1;

implementation
{$R *.DFM}

procedure TForm1.ListFiles(D, Name, SearchName: String);
var
  SR: TSearchRec;
begin
  if D[Length(D)] <> '' then
    D := D + '';

  if FindFirst(D+Name, faAnyFile, SR) = 0 then
    repeat
      if (SR.Attr <> faDirectory) and (SR.Name[1] <> '.') then
        if AnsiUpperCase(SR.Name) = AnsiUpperCase(SearchName) then
          ListBox1.Items.Add(D+SR.Name); {파일을 찾으면 label1.Caption에 디렉토리를 표시}
    Until (FindNext(SR)<>0);
  FindClose(SR);

  if FindFirst(D+'*.*', faDirectory, SR) = 0 then
  begin
    repeat
      if ((Sr.Attr and faDirectory) = faDirectory) and
         (SR.Name[1]<>'.')
      then
        ListFiles(D+SR.Name+'', Name, SearchName); // 재귀적 호출을 한다
    until (FindNext(SR) <> 0);
  end;
  FindClose(SR);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // c: 부터 하위 디렉토리에서 delphi32.exe 파일을 찾는다
  ListFiles('c:','*.*','project1.exe');
end;

end.

 

 

출처 : http://www.howto.pe.kr/


'델파이' 카테고리의 다른 글

OleVariant 형을 스트링으로 변환하는 방법  (0) 2008.12.29
쿠키 읽고/쓰기(GetCookie, SetCookie)  (0) 2008.12.29
실행파일 삭제  (0) 2008.12.24
키보드 이벤트[keybd_event  (0) 2008.12.24
레지스트리 값 읽고 쓰기  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 18:03 델파이

//자기 자신을 삭제하는 로직//

 

procedure DeleteMe;
var
BatchFile:TextFile;
BatchFileName:String;
ProcessInfo:TProcessInformation;
StartUpInfo:TStartupInfo;
begin
//
BatchFileName:=ExtractFilePath(application.exename)+'$$336699.bat';

AssignFile(BatchFile, BatchFileName);
Rewrite(BatchFile);

Writeln(BatchFile, ':try');
Writeln(BatchFile, 'del "' + application.exename + '"');
Writeln(BatchFile, 'if exist "' + application.exename + '"' + ' goto try');
Writeln(BatchFile, 'del "' + BatchFileName + '"');
CloseFile(BatchFile);

FillChar(StartUpInfo, SizeOf(StartUpInfo), $00);
StartUpInfo.dwFlags := STARTF_USESHOWWINDOW;
StartUpInfo.wShowWindow := SW_HIDE;

if CreateProcess(nil, PChar(BatchFileName), nil, nil,False, IDLE_PRIORITY_CLASS,
nil, nil, StartUpInfo, ProcessInfo) then
begin
CloseHandle(ProcessInfo.hThread);
CloseHandle(ProcessInfo.hProcess);
end;
//Close;
end;


'델파이' 카테고리의 다른 글

쿠키 읽고/쓰기(GetCookie, SetCookie)  (0) 2008.12.29
파일 찾기  (0) 2008.12.24
키보드 이벤트[keybd_event  (0) 2008.12.24
레지스트리 값 읽고 쓰기  (0) 2008.12.24
웹에 있는 파일 다운로드 받기(UrlDownloadToFile)  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 18:02 델파이
VOID keybd_event(

      BYTE  bVK,       //가상 키코드

      BYTE  bScan,    //하드웨어 스캔 코드

      BYTE  dwFlags,  //동작 지정 플래그 ULONG_PTR

      DWORD dwExtraInfo   //추가정보

)

 

 [사용 예 ]

 - F5 키 누른 효과 

  keybd_event(VK_F5, 0, 0, 0);
  keybd_event(VK_F5, 0, KEYEVENTF_KEYUP, 0);

 

 

참고 : 가상키  값, 하드웨어 스캔코드  정보 있는 곳

http://www.codeproject.com/KB/system/keyboard.aspx


'델파이' 카테고리의 다른 글

파일 찾기  (0) 2008.12.24
실행파일 삭제  (0) 2008.12.24
레지스트리 값 읽고 쓰기  (0) 2008.12.24
웹에 있는 파일 다운로드 받기(UrlDownloadToFile)  (0) 2008.12.24
TWebBrowser 에서 텍스트 형태 바꾸기  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 18:01 델파이

[선언부]

var
  Reg: TRegistry;
  RegVal: String;

 

[초기화]

  Reg := TRegistry.Create;
   Reg.RootKey := HKEY_LOCAL_MACHINE;  
   Reg.OpenKey(REG_CLSID, True);

 

[값 읽기]

  RegVa := Reg.ReadString('REG_READ_NAME');

 

[값 쓰기]

  Reg.WriteString('REG_WRITE_NAME', '1');

 

[메모리 해제]

  Reg.Free;


'델파이' 카테고리의 다른 글

실행파일 삭제  (0) 2008.12.24
키보드 이벤트[keybd_event  (0) 2008.12.24
웹에 있는 파일 다운로드 받기(UrlDownloadToFile)  (0) 2008.12.24
TWebBrowser 에서 텍스트 형태 바꾸기  (0) 2008.12.24
델파이 자료형~!  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 17:59 델파이

//[함수 구현 부분]

 

function DownloadFile(SourceFile, DestFile: string): Boolean;
begin
  try
  Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0;
  except
  Result := False;
  end;
end;

// [함수 호출 부분~]

 

// 다운로드할 URL 경로
SourceFile = 'http://.../SB_DB.txt';
// 저장할 파일의 경로
DestFile = 'c:\SB_DB.txt';

if DownloadFile(SourceFile, DestFile) then begin
    ShowMessage('Download succesful!');
    ShellExecute(Application.Handle, PChar('open'), PChar(DestFile),
    PChar(''), nil, SW_NORMAL)
  end else begin
    ShowMessage('Error while downloading ' + SourceFile)
  end;

'델파이' 카테고리의 다른 글

키보드 이벤트[keybd_event  (0) 2008.12.24
레지스트리 값 읽고 쓰기  (0) 2008.12.24
TWebBrowser 에서 텍스트 형태 바꾸기  (0) 2008.12.24
델파이 자료형~!  (0) 2008.12.24
문자열 관련 함수  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 17:56 델파이
Author: sTenYa

Category: Internet / LAN

{....}

private
  procedure 
SearchAndHighlightText(aText: string);
    
{....}

uses mshtml;

{ .... }


procedure TForm1.SearchAndHighlightText(aText: string);
var
  
tr: IHTMLTxtRange; //TextRange Object
begin
  if not 
WebBrowser1.Busy then
  begin
    
tr := ((WebBrowser1.Document as IHTMLDocument2).body as IHTMLBodyElement).createTextRange;
    //Get a body with IHTMLDocument2 Interface and then a TextRang obj. with IHTMLBodyElement Intf.

    
while tr.findText(aText, 1, 0) do //while we have result
    
begin
      
tr.pasteHTML('<span style="background-color: Lime; font-weight: bolder;">' +
        tr.htmlText + '</span>');
      //Set the highlight, now background color will be Lime
      
tr.scrollIntoView(True);
      //When IE find a match, we ask to scroll the window... you dont need this...
    
end;
  end;
end;

// Example:
procedure TForm1.Button1Click(Sender: TObject);
begin
  
SearchAndHighlightText('delphi');
end;


'델파이' 카테고리의 다른 글

레지스트리 값 읽고 쓰기  (0) 2008.12.24
웹에 있는 파일 다운로드 받기(UrlDownloadToFile)  (0) 2008.12.24
델파이 자료형~!  (0) 2008.12.24
문자열 관련 함수  (0) 2008.12.24
델파이에서 브라우저 띄우기  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 17:54 델파이

자 료 형 (Data types)

단 순 형

문 자 열 형

구 조 형

포 인 터 형

가 변 형

정수형

단문자열형

배열형

무형 포인터

가변형

문자형

장문자열형

레코드형

유형 포인터

 

대수형

광폭(Wide)문자열형

집합형

 

 

열거형

 

 

 

 

범위형

 

 

 

 

실수형

 

 

 

 

1.숫 자 형

        1.1 정수형(Integer)

           정수형은 일반적인 숫자를 표현하는데 사용되는 자료형

          

자 료 형

범   위

크   기

Shortint

-128~127

1바이트 / 부호있는 8비트

Smallint

-32768~32767

2바이트 / 부호있는 16비트

Longint

-2147483648~2147483647

4바이트 / 부호있는 32비트

Byte

0~255

1바이트 / 부호없는 8비트

Word

0~65535

2바이트 / 부호없는 16비트

Integer

-2147483648~2147483647

4바이트 / 부호있는 32비트

Cardinal

0~2147483647

4바이트 / 부호없는 32비트

          1.1.A 변수선언방법

           

var

   I : Shortint;

            1의 값은 -128에서 127사이의 범위에 포함된다. 

           1.1.B 정수형 변수에 변수 대입방법

           

var

   I : Shortint;

   J : Word;

begin

   J := I;

   I := J;

end;

             정수형의 범위를 벗어난 값을 대입하려고 하면 엉뚱한 값이 대입됨.

        1.2 실수형(real type)

          소수점 이하의 값을 다룰 때 사용

      

실 수 형

범   위

크   기

Real

2.9*10^-39 ~ 17*10^38

6바이트

Single

1.5*10^-45 ~ 3.4*10^38

4바이트

Double

5.0*10^-324 ~ 1.7*10^308

8바이트

Extended

3.4*10^-4932 ~ 1.1*10^4932

10바이트 

Comp

-263~263-1

8바이트

Currency

-922337293685477.5808 

~922337203685477.5807

8바이트

2.문 자 형

        2.1 단 문 자 열 형

        오브젝트 파스칼의 문자형으로는 세 가지 기본 자료형이 준비되어 있다.

        

문 자 형

표 현 범 위

AnsiChar

1바이트 크기 또는 ASCII 코드 값이 해당하는 문자

WideChar

2바이트 크기 또는 유니코드(Unicode) 문자

Char

AnsiChar형과 같음

           2.1.A 변수선언방법  <문자의 좌우에는 작은 따옴표를 사용해야 한다.>

            

var

   C : Char;

begin

   C := 'a';

end; 

           2.1.B ASCII 코드 값과 함께 # 기호를 사용 방법

            

C := #65;            //ASCII 코드에서 65번째 문자를 가리킨다.

            다음과 같은 의미를 가진다.

            

C := 'A';

        #기호와 ASCII 코드는 키보드로 입력할 수 없거나 또는 ENTER키와 같이 일반적인

         문자로 표현하기 어려운 문자를 사용하기 원할 때 편리하다.


        2.2 장 문 자 열 형 (String Type)

        문자열형은 여려 개의 문자로 이루어진 문자열을 가질 수 있는 자료형입니다.


        

문 자 열 형

설   명

ShortString

최대 255자 길이의 문자열을 가질 수 있습니다.

AnsiString

임의의 길이의 ASCII문자열을 가질수 있습니다.

WideString

임의의 길이의 유니코드 문자열을 가질수 있습니다.

String

컴파일러 지시자에 따라 ShortString이나 AnsiString이 됩니다. {$H+}가 사용된 경우에는 AnsiString이 되고,

{$H-}가 사용된 경우에는 ShortString이 됩니다.

           2.2.A 문자열 선언방법

             - 단문자 열형

            

 var

  SS : shortsrting[10];

         

            

 var

  SS : string[10];

             - 장문자 열형

            

 var

  LS : AnsiString;

             - *컴파일러 지시자를 사용

            

{$H +} 

var

  LS : string;

             *컴파일러 지시자 $H

         -컴파일러 지시자 $H는 기본적으로 설정된 상태(ON)입니다. 다시 말해서, 컴파일러 지시자의 프로           젝트 설정대화상자의 상태를 바꾸지 않았다면, String은 AnsiStirng과 같은 의미를 가집니다.             

             - wide 문자열형의 경우

            

 var

  WS : widestring;

                


3.배 열 형

        3.1 배열형

         배열형은 동일한 자료형의 값들을 여러 개 저장하는데 사용됩니다.

           3.1.A 배열형 선언

            

 var

  A : array [1..10] of integer;

           3.1.B 배열형 대입

            

 A[1] : = 100;


        3.2 집합형

         집합형은 수학에서 흔히 사용 되는 집합을 표현하는데 사용되는 것으로, 집합형을 사용하면 일반적            인 집합을 표현하고 계산하는 등의 작업을 쉽게 수행할 수 있습니다.

           3.2.A 집합형 선언방법

           

 var

   CharSet : Set of Char;

           3.2.B 집합형 대입

           

 CharSet : = [ 'a' , 'c', 'f' ];



4.기 타

        4.1 대수형

        대수형은 참과 거짓, 0과 1 등 두가지 값을 표현할 수 있는 기본 자료형이다.

        

대 수 형

크기 및 표현 범위

ByteBool

1바이트의 True / False

WordBool

2바이트의 True / False

LongBool

4바이트의 True / False

Boolean

ByteBool과 같음

        실제로 델파이에서는 주로 Boolean형이 많이 사용되고, 나머지 대수형은 주로 외부 언어나 모듈과 함께             사용된다.


        4.2 열거형

        열거형은 말 그대로 몇 개의 항목들을 나열하고 그 순서를 값으로 가질 수 있는 자료형이다.

        

type

   color = ( Red, Blue, Green, Black, White, Gray );

         // Colors 형의 변수는 열거한 세 가지 값들 중에서 한가지를 가질 수 있다.

        열거형으로 선언된 변수는 나열된 값들 중에서 한 가지를 가질 수 있다.

           4.2.A 선언방법

           

var

   MyFavoriteColor : Colors;

begin

   MyFavoriteColor := Red;   //MyFavoriteColor의 값은 Red이다.

end;

           열거형 변수를 선언할 때 나열된 값들은 해당 열거형 변수에 대해서만 일종의 상수로 취급.

           따라서 이렇게 나열된 상수들은 같은 범위 내에서 다른 용도로 사용될 수 없다.


        4.3 범위형

          -범위형은 앞에서 설명했던 단순형들 중에서 특정 자료형이 표현할 수 있는 범위의 일부만을 범위로 가지는              자료형이다.

          -범위형도 열거형과 마찬가지로 사용자가 범위를 정할 수 있으므로 사용자 정의 자료형이다.

           4.3.A 범위형 선언방법

           

type

   MyNumber = 1..10;

           4.3.B 영문 소문자만을 가질 수 있는 범위형 변수를 선언

           

type

   YourColors = Green..White;

           범위형 변수를 사용할 때에는 일반적인 단순형 변수와 같은 방법으로 취급할 수 있다. 단지, 범위형을 정           의할 때정한 최소값과 최대값의 범위를 벗어나지 않도록 주의해야 한다.


        4.4 순서형

        순서형에서는 특별한 연산이 가능. 어떤 값보다 바로 앞에 있거나 뒤에 있는 값을 구하는 연산과 어        떤 값이처음부터 몇 번째 위치에 있는지 알아내는 연산이 있다. 전자의 경우에는 Pred와 Succ를 사        용하고, 후자의경우에는 Ord를 사용한다.

          

Succ(5) = 6;

Pred(5) = 4;

Ord(5) = 5;

Succ('a') = 'b';

Pred('z') = 'y';

Ord('a') =97;

Ord(false) = 0;

Succ(false) = true;

Pred(false) = true;

Pred(Green) = Red;

Ord(Pred(Green)) = Ord(Red) = 0;


        4.5 레코드형

        - 동일한 형의 여러 데이터를 다루기 위해서 배열을 사용하는 것과 달리 서로 같거나 다른 자료형의          여러 데이터를 다루기 위해서 레코드형을 사용할 수 있습니다.

           4.5.A 레코드형 선언

           

 type

  Cities = (Seoul, Incheon, Pusan, Masan ) ;

  AddrInfo = record

        Name : String;

        Sex : Char ;

        City : Cities;

        Post 1 : shorting;

        Post 2 : shorting;

  end;


           4.5.B 레코드형 대입

           

 var

  MyAddr : AddrInfo;

  MyAddr. Name : = '문열‘;

  MyAddr. Sex : = 'M'

  MyAddr. City : = Seoul;

  MyAddr. Post1 : =100;

  MyAddr. Post2 : =200;

        

        4.6 포인터형(Pointer type)

        - 포인터형은 어떤 대상을 가리키는 값을 표현하는 자료형

        - 포인터형변수는 변수가 저장된 메모리 영역을 가리킨다

        -포인터형 변수는 일정한 범위의 값이 아니라 변수가 저장된 메모리 영역의 주소를 값으로 가진다.

           4.6.A 포인터형 변수가 메모리의 유효한 영역을 가리키게 하는 방법

            ·간접 어드레싱(indirect addressing)

              -실제로 선언된 변수의 주소를 포인터에 대입하는 방법

            ·동적 변수(dynamic variable)

              -시스템에서 어떤 메모리 영역을 할당받은 후, 포인터가 그 영역을 가리키게 하는 방법

           4.6.B 델파이에서 포인터를 선언하는 방법 

            · 무형 포인터 (untyped pointer)

var

 P : pinter;

              - 포인터가 일정한 형의 변수를 가리키는 것이 아니라 임의의 형의 변수를 가리킬 수 있는 것

                  pointer 라는 예약어를 사용한다

            ·유형 포인터 (typed pointer)

             - 일정한 형의 변수를 가리키는 것

var

 PI : ^Integer;

                 자료형 이름 앞에 ^기호를 사용 

             ·포인터가 가리키는 값을 사용하할 때

var

PI : PInteger;

 I : Integer;

 

 PI := I^; //pi 가 가르키는 값에 I를 대입

                 변수 다음에 ^ 기호 사용


        4.7 가 변 형 (Variant type)

        - 가변형은 실행시 임의의 자료형을 포함할 수 있는 자료형이다.

        즉>프로그램이 실행중일 때, 가변형의 변수들은 정수형,실수형,문자열형,대수형등의 값을 가질수있다.

        - 자료형의 변수들을 대입할 수 있다.


           4.7.A 선언방법

var

 V : variant;


 


           4.7.B 변수 대입 방법

 var

  V1, V2 : variant;

  I : Integer

  S : String;

 

  I := 100;

  S := '-100';

  V1 := I ;

 V2 := S;

   
 


posted by 유돌이
2008. 12. 24. 17:33 델파이

String.Compare :: 문자를 비교

 

String.Lower  :: 문자를 소문자로 변환


String.Mid :: 경로 지정

'델파이' 카테고리의 다른 글

TWebBrowser 에서 텍스트 형태 바꾸기  (0) 2008.12.24
델파이 자료형~!  (0) 2008.12.24
델파이에서 브라우저 띄우기  (0) 2008.12.24
델파이에서 dll 등록하기  (0) 2008.12.24
델파이 폼 최소화 시키는 법  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 17:32 델파이

델파이 프로그램에서 브라우저를 띄우실려면

 

우선 툴파레트에서 'internet' 영역에 있는 'TwebBrowser'를 선택하셔서

브라우저가 나타날 위치에 드레그하시고...

 

procedure TForm2.FormCreate(Sender: TObject);

 

부분에 아래와 같이 추가  하시면 됩니다.

 

=> WebBrowser.Navigate('http://blog.naver.com/cysnim12');


'델파이' 카테고리의 다른 글

델파이 자료형~!  (0) 2008.12.24
문자열 관련 함수  (0) 2008.12.24
델파이에서 dll 등록하기  (0) 2008.12.24
델파이 폼 최소화 시키는 법  (0) 2008.12.24
델파이 기본 함수  (0) 2008.12.24
posted by 유돌이
2008. 12. 24. 14:33 델파이
WinExec('Regsvr32 /s "파일명"',0);

'델파이' 카테고리의 다른 글

델파이 자료형~!  (0) 2008.12.24
문자열 관련 함수  (0) 2008.12.24
델파이에서 브라우저 띄우기  (0) 2008.12.24
델파이 폼 최소화 시키는 법  (0) 2008.12.24
델파이 기본 함수  (0) 2008.12.24
posted by 유돌이
prev 1 ··· 5 6 7 8 9 next