Apache 2.2.8 & PHP 5.2.6 설치

Programming/Apache, PHP 2008.05.15 01:15 Posted by 파란크리스마스

1. Apache Server Download (http://httpd.apache.org/download.cgi)

Win32 Binary including OpenSSL 0.9.8g (MSI Installer): apache_2.2.8-win32-x86-openssl-0.9.8g.msi

2. Apache Server Install

2-1. Apache 설치 마법사 실행 화면, [Next] 버튼 선택

사용자 삽입 이미지


2-2. License 동의 Step, License 동의 선택하고, [Next] 버튼 선택

사용자 삽입 이미지


2-3. [Next] 버튼 선택

사용자 삽입 이미지


2-4. 저의 경우 간단한 Test 용도로 사용하는 것으로, 기본값 변경 없이 [Next] 버튼 선택

사용자 삽입 이미지


2- 5. [Next] 버튼 선택

사용자 삽입 이미지


2- 6. [Change] 버튼을 선택해서 설치하고 싶은 디렉토리를 선택하고, [Next] 버튼 선택

사용자 삽입 이미지


2- 7. [Install] 버튼 선택

사용자 삽입 이미지


2- 8. 파일 복사 진행 확인 하는 창

사용자 삽입 이미지


2- 9. [Finish] 버튼 선택하여 설치 종료

사용자 삽입 이미지


설치 확인 : 조금 썰렁한 화면이 보이네요.

사용자 삽입 이미지


Default 페이지는
C:\Apache2.2\htdocs\index.html 에 있습니다.

내용
------------
<html><body><h1>It works!</h1></body></html>
------------

3. PHP Download (http://www.php.net/downloads.php)

Windows Binaries PHP 5.2.6 zip package

http://kr2.php.net/get/php-5.2.6-Win32.zip/from/a/mirror

4. PHP 설치

4-1 php-5.2.6-Win32.zip 압축 풀기

압축파일 php-5.2.6-Win32.zip 을 풀어 C:\php-5.2.6-Win32 로 둠

4-2 php.ini 파일 작성

C:\php-5.2.6-Win32\php.ini-recommended 파일을 php.ini 파일명으로 rename 해서 C:\Windows의 폴더에 복사

4-3 C:\php-5.2.6-Win32 경로를 환경 변수 Path에 추가

5. Apache 환경파일(httpd.conf)에 php관련 내용을 추가

C:\Apache2.2\conf\httpd.conf 파일 내용 추가

# For PHP 5 do something like this:
LoadModule php5_module "C:/php-5.2.6-Win32/php5apache2_2.dll"

    AddType application/x-httpd-php .php .php3 .html .htm .phtml
    AddType application/x-httpd-php-source .phps

6. PHP 설치 Test 

6-1. php 샘플 파일 작성

파일 경로
C:\Apache2.2\htdocs\test.php

test.php 내용
------------------
<?php
  phpinfo();
?>
------------------

6-2. Apache 재시작

C:\Apache2.2\bin>httpd -k restart

6-3. 페이지 확인

사용자 삽입 이미지





신고

Delphi - 투명 윈도우 만들기

Programming/Delphi 2008.03.23 01:55 Posted by 파란크리스마스

출처
http://kurapa.com/content-a411_%25ED%2588%25AC%25EB%25AA%2585%25EC%259C%2588%25EB%258F%2584%25EC%259A%25B0

http://careerblog.scout.co.kr/home/?pSeq=665762&blogURL=http://neodreamer.tistory.com/39
http://careerblog.scout.co.kr/search/?searchtype=4&searchtext=CodeGear

// 투명 윈도우 만들기
procedure TfmMain.Button1Click(Sender: TObject);
begin
  SetWindowLong(handle, GWL_EXSTYLE, GetWindowLong(handle, GWL_EXSTYLE) or WS_EX_LAYERED);
  SetLayeredWindowAttributes(handle, 0, Round((255 * 70 ) / 100), LWA_ALPHA);
end;

// 투명 윈도우 만들기 + 최상위 윈도우 + 이벤트 활성화
procedure TfmMain.Button2Click(Sender: TObject);
begin
   Self.Color := RGB(1, 1, 1);
   SetWindowLong(handle, GWL_EXSTYLE, GetWindowLong(handle, GWL_EXSTYLE) or WS_EX_LAYERED);
   SetLayeredWindowAttributes( handle, RGB(1, 1, 1), 127, LWA_COLORKEY or LWA_ALPHA);
  Self.FormStyle := fsStayOnTop;
end;

신고

Delphi Tip - 파일이름 관련 함수

Programming/Delphi 2008.03.04 17:27 Posted by 파란크리스마스
Delphi Tip - 파일이름 관련 함수

출처 : http://delphi.borlandforum.com/impboard/impboard.dll?action=read&db=del_tip&no=179
http://www.swissdelphicenter.ch/torry/showcode.php?id=144
http://www.delphibasics.co.uk/RTL.asp?Name=StringReplace

// 델파이
function ExtractFileDir(const FileName: string): string;
function ExtractFileDrive(const FileName: string): string;
function ExtractFileName(const FileName: string): string;
function ExtractFilePath(const FileName: string): string;

예)

filename := ExtractFileName(  StringReplace(url, '/', '\', [rfReplaceAll, rfIgnoreCase]) );
신고

Delphi - File Download

Programming/Delphi 2008.03.04 12:58 Posted by 파란크리스마스

Delphi Tip - File Download

출처 : http://delphi.about.com/od/internetintranet/a/get_file_net.htm

uses WinInet;

function GetInetFile (const fileURL, FileName: String): boolean;
const
  BufferSize = 1024;
var
  hSession, hURL: HInternet;
  Buffer: array[1..BufferSize] of Byte;
  BufferLen: DWORD;
  f: File;
  sAppName: string;
begin
  result := false;
  sAppName := ExtractFileName(Application.ExeName);
  hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0) ;
  try
    hURL := InternetOpenURL(hSession, PChar(fileURL), nil, 0, 0, 0) ;
    try
      AssignFile(f, FileName);
      Rewrite(f,1) ;
      repeat
        InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
        BlockWrite(f, Buffer, BufferLen);
      until BufferLen = 0;
      CloseFile(f) ;
      result := True;
    finally
      InternetCloseHandle(hURL);
    end
  finally
    InternetCloseHandle(hSession);
  end;
end;

// 윈도우즈의 임시폴더 명을 반환한다.
function SysTempPath(): String;
var
  Buffer: array[0..1023] of Char;
begin
  SetString(Result, Buffer, GetTempPath(Sizeof(Buffer)-1, Buffer));
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  internetFile,
  localFileName: string;
begin
 internetFile := 'http://localhost:8080/Sample.jmd';
 localFileName := SysTempPath() + 'test.xml';

 if GetInetFile(internetFile, localFileName) then
   ShowMessage(SysTempPath() + 'Sample.jmd' + ' / Download successful.')
 else
   ShowMessage('Error in file download.') ;
end;

신고

Random 숫자 얻기

Programming/C++ 2007.12.18 00:51 Posted by 파란크리스마스

 FILETIME ft;
 GetSystemTimeAsFileTime(&ft);
 static DWORD dwVal = 0x21;
 DWORD dwSeed = (dwVal++ << 0x18) | (ft.dwLowDateTime & 0x00ffff00) | dwVal++ & 0x000000ff;
 srand(dwSeed);

 int iRandom = rand()%10+1;

신고
TAG rand, random, srand

BSTR to char Array, char Array to BSTR

Programming/C++ 2007.12.17 23:20 Posted by 파란크리스마스

BSTR -> char 배열

char szData[200];
BSTR decodeData;

USES_CONVERSION;
strcpy(szData,OLE2A(decodeData));

char 배열 -> BSTR

USES_CONVERSION;
char* szData = "char array";
BSTR sbstr;

sbstr = SysAllocString(A2W(szData)); 

신고
TAG BSTR

Flex - SOAP 관련 링크 정보

Programming/Flex 2007.10.18 12:33 Posted by 파란크리스마스
(Java AXIS + JBOS) + Flex SOAP을 구현중에 유용한 링크 정보입니다.
성공하면 정리해서 다시 올리겠습니다.... ^^
(언제 성공하려나....)



Develop Web services clients with Macromedia Flex
http://www.ibm.com/developerworks/webservices/library/ws-macroflex/

Review: Macromedia Flex SOAP
http://javaboutique.internet.com/reviews/macro_flex/

mx.rpc.soap.Operation (Flex™ 2 레퍼런스 가이드)
http://flexdocs.kr/docs/flex2/langref/mx/rpc/soap/Operation.html

mx.rpc.soap.SOAPHeader (Flex™ 2 레퍼런스 가이드)
http://flexdocs.kr/docs/flex2/langref/mx/rpc/soap/SOAPHeader.html

Flex SoapHeader를 첨가한 WebService
http://www.cnblogs.com/mobile/archive/2007/02/01/636856.html

Flex 와 .Net ASP 간의 WebService
http://dev.yesky.com/265/3418765.shtml

Flex 와 Java XFire 간의 WebService
http://www.flexcoders.cn/showtopic-1011.aspx

Web Service Flex consume .net SoapHeader
http://groups.google.com/group/Flex2-Builder/browse_thread/thread/a867330cd3c7a2d7

Codehaus XFire - Home
http://xfire.codehaus.org/

Chapter 17. Spring을 사용한 원격(Remoting)및 웹서비스
http://openframework.or.kr/framework_reference/spring/ver1.2.2/html/remoting.html

Korean Groovy SOAP
http://groovy.codehaus.org/Korean+Groovy+SOAP

신고

Flex - Ant 로 컴파일 하기

Programming/Flex 2007.10.09 19:47 Posted by 파란크리스마스

출처

http://adobe.bloter.net/tt/adobe/23
http://www.adobe.com/kr/devnet/flash/articles/flex_flasher_05.html

준비물

ant 1.7 (apache-ant-1.7.0-bin.zip)
:
http://ant.apache.org/bindownload.cgi

Flex Ant Task (flex_ant_tasks_022607.zip)
: http://labs.adobe.com/wiki/index.php/Flex_Ant_Tasks


1. ant 설치

apache-ant-1.7.0-bin.zip 파일을 압축을 출고
apache-ant-1.7.0\bin 폴더를 path에 추가 해줍니다.

2. F;ex Ant Tash 설치

flex_ant_tasks_022607.zip 특정 폴더에 압축을 풀고
build.xml 파일에 taskdef 태그에 jar 경로를 지정해준다.

예) <taskdef resource="flexTasks.tasks" classpath="D:/dev.flex/lib/flexTasks.jar" />

3. build.xml 파일 작성

<?xml version="1.0" ?>

<project name="Flex Ant Tasks" default="compile" basedir=".">

  <property name="FLEX_HOME" value="C:/Program Files/Adobe/Flex Builder 2/Flex SDK 2" />
  <property name="swfFile" value="${basedir}/HelloWorld.swf" />
  <property name="main_appliation" value="${basedir}/HelloWorld.mxml" />

  <taskdef resource="flexTasks.tasks" classpath="D:/dev.flex/lib/flexTasks.jar" />

  <target name="compile">
    <echo>Building ${swfFile}</echo>
      <mxmlc
          file="${main_appliation}"
          output="${swfFile}"
          actionscript-file-encoding="UTF-8"
          keep-generated-actionscript="true"
          incremental="true"
      >
    </mxmlc>
  </target>
 
</project>


4. 컴파일

ant -f build.xml

사용자 삽입 이미지

신고
TAG ant, flex

간이 웹서버2 - PHP 지원 (Simple Web Server)

Programming/Apache, PHP 2007.09.11 11:58 Posted by 파란크리스마스

WebSsrver.php.zip

출처 : http://www.delphi3000.com/articles/article_3081.asp?SK=

이전에 개발된 웹서버에 php 지원을 추가했습니다.
아직 Port 번호 수정은 되지 않으며, php는 따로 설치 하시고, path 가 잡혀 있어야 합니다.

델파이 7로 컴파일 하였으며, Indy 10, php4delphi 컴포넌트 사용하였습니다.

Sample로 test.php을 넣어 두었고,
프로그램 실행하시고, Web Server Active 체크하시면 웹서버가 동작하게 됩니다.

브라우저에서 http://localhost/test.php 하시면 Sample php 페이지를 보실 수 있습니다.

test.php

<?php
  phpinfo();
?>

실행화면

사용자 삽입 이미지




신고

Flex - Singleton

Programming/Flex 2007.09.07 16:00 Posted by 파란크리스마스
출처

http://www.onflex.org/ted/2007/01/singleton-in-mxml.php

Flex을 이용한 디자인 패턴증에서 Singleton을 적용한 방법입니다.
java 처럼 생성자 자체를 private로 할수는 없네요.
다시 말해 생성자를 new로 생성하면 별도의 객체가 만들어지게 됩니다.

Singleton 예)

package
{
    public class ConnectionManager
    {
        private static var instance:ConnectionManager;
       
        private var title:String;
       
    public static function getInstance():ConnectionManager {
      if ( ConnectionManager.instance ) {
        return ConnectionManager.instance;
      } else {
        ConnectionManager.instance = new ConnectionManager();
        return ConnectionManager.instance;
      }           
    }
   
    public function setTitle(src:String):void {
        this.title = title;
    }
   
    public function getTitle():String {
        return this.title;
    }
    }
}

new 객체 생성시

var connMgr1:ConnectionManager = new ConnectionManager();
connMgr1.setTitle("a");
               
var connMgr2:ConnectionManager = new ConnectionManager();
connMgr2.setTitle("b");

mx.controls.Alert.show(connMgr1.getTitle() + "/" + connMgr2.getTitle());

사용자 삽입 이미지






getInstance 매소드 이용시

var connMgr1:ConnectionManager = ConnectionManager.getInstance();
connMgr1.setTitle("a");
               
var connMgr2:ConnectionManager = ConnectionManager.getInstance();
connMgr2.setTitle("b");
               
mx.controls.Alert.show(connMgr1.getTitle() + "/" + connMgr2.getTitle());

사용자 삽입 이미지

신고

Apache 1.3.x 에 php5 설치

Programming/Apache, PHP 2007.08.30 16:15 Posted by 파란크리스마스

PHP 다운로드

http://www.php.net/downloads.php

php-5.2.3-Win32.zip

php-5.2.3-Win32.zip 파일을 받아
c:/php 폴더에 풀고 paht에 추가 합니다.

httpp.conf 수정

ScriptAlias /php5/ "C:/php/"
Action application/x-httpd-php "/php5/php-cgi.exe"

AddType application/x-httpd-php .php .php3 .inc .phtml .html .htm
AddType application/x-httpd-php-source .phps

테스트 페이지 작성

<?php
  phpinfo();
?>

신고

Felx - DataGrid itemFocusIn

Programming/Flex 2007.08.29 11:48 Posted by 파란크리스마스

참조
http://flexdocs.kr/docs/flex2/langref/mx/events/DataGridEvent.html

DataGird에서 Item 선택시 호출되는 이벤트 처리 입니다.
DataGird 속성은 반듯이 editable="true" 되어 있어야 해당 이벤트가 호출 됩니다.

DataGridEvent 객체

Property Value
bubbles false
cancelable false
columnIndex 0부터 시작 / DataGrid의 열의 인덱스
currentTarget 이벤트를 처리하는 event listener를 정의하는 object
dataField null
itemRenderer 편집중의 아이템에 대응하는 아이템 에디터 인스턴스
localX NaN
reason null
rowIndex 0부터 시작 / DataGrid의 행의 인덱스
target 이벤트를 dispatch한 object
Type DataGridEvent.ITEM_FOCUS_IN

이벤트 등록

1. XML 속성으로 등록

<mx:DataGrid id = "grid1" editable="true" itemFocusIn="onItemFocusIn(event)">

2. 스크립트로 등록

grid1.addEventListener(DataGridEvent.ITEM_FOCUS_IN,onItemFocusIn);

이벤트 처리

   public function onItemFocusIn(e:DataGridEvent):void {
    var item:XMLList = new XMLList(grid1.dataProvider[e.rowIndex]);
    mx.controls.Alert.show("row = " + e.rowIndex + "\nitem value = \n" + item);
   }
신고


 

티스토리 툴바