2008년 9월 16일 화요일

네트워크 공유 폴더를 다른 아이디와 암호로 로그인 하고 싶을때

윈도우에서 네트워크 공유폴더를 이용시 아이디와 암호를 저장할 경우 다시 접근시 저장된 암호와 아이디로 접근 합니다.
이 아이디와 암호를 변경하는 방법은 두가지가 있습니다. (둘중 아무방법을 하셔도 상관없습니다.)

1. 첫번째 방법  (윈도우 툴을 이용한 방법)

more..



2. 두번째 방법 (커맨드 창에서 net use 명령어를 사용하는 경우)

more..

2008년 9월 15일 월요일

Windows Server 2008에 Exchange 2007 SP1 선행 조건을 설치하는 방법

출처 : http://technet.microsoft.com/ko-kr/library/bb691354(EXCHG.80).aspx


Exchange 2007
Windows Server 2008에 Exchange 2007 SP1 선행 조건을 설치하는 방법

more..

2008년 9월 2일 화요일

윈도우 업데이트 오류 해결 방법

오류메시지도 뜨지 않고 업데이트가 되지 않을경우..

업데이트를 진행하는 서비스에 필요한 DLL이 등록되지 않아서인데...
업데이트(처음진행시) 다른프로그램이 설치중이거나, 실행중일때 발생할 수 있다.


윈도우 업데이트 오류 해결 방법

시작, 실행 → cmd 입력, 엔터.
cmd 명령 프롬프트 창이 뜨면 cd\ 엔터합니다.


C:\>
이렇게 표시가 되면 net stop wuauserv 를 입력, 엔터.
C:\>net stop wuauserv


C:\>
regsvr32 %windir%\system32\wups2.dll 입력, 엔터.
C:\>regsvr32 %windir%\system32\wups2.dll

※ 여기서 Windows XP Professional x64 Edition 의 경우는 다음과 같이 입력합니다.
C:\>regsvr32 %windir%\syswow64\wups2.dll


C:\>
net start wuauserv 입력, 엔터.
C:\>net start wuauserv


모든 작업을 마쳤으면 cmd 창을 닫고 부팅 후 인터넷 도구 → Windows Update(U),
혹은 자동 업데이트를 통해 업데이트를 설치합니다.

출처 :
http://support.microsoft.com/kb/943144/ko

2008년 8월 31일 일요일

아파치 SeLinux 권한 관련 오류

Apache 와 PHP를 설치후,.. 아파치를 실행하면,

Syntax error on line 232 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied

Fedora에서는 Selinux기술을 사용하는데, 서버환경에서 Selinux환경이 활성화 되어 있는 상태이면 위와 같은 오류가 발생한다.
Selinux활성화 상태에서 apache를 구동하는 방법은 조금 복잡함으로, 그냥 비활성화 시키고 재부팅하면 된다.


/etc/sysconfig/selinux   파일은 열어서

SELINUX=enforcing  부분을 아래와 같이 변경후 재부팅한다.

SELINUX=disabled

2008년 8월 28일 목요일

헝가리언 표기법

헝가리언 표기법

 

유래

10,15년 전 Microsoft의 개발자중 헝가리 사람의 프로그래머가 쓰던 변수 명명법.

MS 내부에서 따라 쓰기 시작하던 것이 점차 전세계의 프로그래머들에게 널리 퍼져 프로그램 코딩시 변수 명명의 표준적인 관례가 되었다. 그러나 실제로 현장에서 일하다 보면 헝가리안 표기법을 제대로 지키는 개발자는 그리 많지 않다. 어느 정도 개발 경험을 가지고 있는 프로그래머는 물론 심지어 시중의 프로그래밍 서적에서 조차 저자 마다 변수 명을 개인에 따라 가지 각색으로 짓고 있어서 처음프로그램을 배우는 입문자들이 변수 명명에 대한 기준을 제대로 잡지 못하고 있는 실정이다.

변수 명명에 관한 표준화된 관례를 지켜주면 코드의 가독성을 높여 줄뿐 아니라 어떤 변수 명을 지을지 고민하지 않아도 되는 편리함을 누릴 수 있다.

                         

 :Prefix     :Type                  :Description                                   :Example

:b          :bool                   :any boolean type                           :bool bTrue;

:c          :char                    :character type                              :char cLetter;

:i           :int                      :integer                                         :int iCars;

:l           :long                    :long type                                      :long lDistance;

:u          :unsigned             :unsigned type                            

:f           :float                   :floating point                                :float fPercent;

:d          :double                :double floating point                      :double dPercent;

:s           :static                  :a static variable                           :static short ssChoice;

:rg         :array                   :stands for range                            :float rgfTemp[16];

:p          :*                        :any pointer                                   :int *piAddr;

:sz         :*                       :null terminated string of characters   :char szText[16];

:pfn        :*                        :function pointer                            :int (*pifnFunc1)(int x, int y);

:t           :struct                 :a user defined type

:e          :enum                  :variable which takes enumerated values

:E          :enum                  :Enumerated type

:g_         :Global                 :Global Variable                               :String *g_psBuffer

:m_        :Member               :class private member variable           :

:k           :constant formal parameter                                        :void vFunc(const long klGalaxies)

:r           :reference formal parameter                                       :void vFunc(long&rlGalaxies)

:str        :String                  :string class(C )                          :String strName;

:prg       :dynamically allocated array                                       :char *prgGrades;

:h          :handle                :handle to something                     :hMenu

 

:n          :                           :number, quantity                          :int nNum;

:x/y        :                           :used as size                                 :int xWitdth, yHeight;

 

 

Example of type specific variable naming

unsigned char ucByte;              :한 바이트 데이타

         char cChar;               :한 문자

unsigned char rgucByte[10];           :바이트 데이타10개

         char rgcChar[10];                        :문자 데이터10개

         char szChar[16 1];     :문자16개를 저장할 수 있는 문자열 공간

 

:Data Type           :Description

BYTE               unsigned char type

WORD              unsigned short type

DWORD            unsigned long type



접두어

의미

a

배열

b 또는 f

BOOL형 변수(b는 bool, f는 flag의 약자

by

BYTE(unsigned char)형 변수

c

카운터로 사용되는 변수

ch

Char 형 변수

cx, cy

X, Y 길이를 나타내기 위해 사용되는 변수

d

날짜형 변수

dbl

Double형 변수

h

핸들(HANDLE)형 변수

n는 i

Int형 변수

l

Long형 변수

p

포인터변수

lp

Long(far)포인터 변수(32비트 프로그래밍에서는 일반 포인터와 같음)

s

문자열

sz

(NULL)문자로 끝나는 문자열

u

Unsigned int형 변수

w

WORD(unsigned short)형 변수

dw

DWORD(unsigned long)형 변수

str

Cstring 형 변수

2008년 8월 26일 화요일

C#으로 동영상 플레이 제작을 위한 필수 항목

DirectX Software Develpment Kit

http://www.microsoft.com/downloads/details.aspx?FamilyID=86cf7fa2-e953-475c-abde-f016e4f7b61a&displaylang=en&Hash=qeJBP6Uksx0zY%2btLhcKYj%2fx4PDbDDOI%2btC%2bsa73SX4pkMysJCEnMU48j49VRn6%2fbDsK5k8OfHBLz%2fe9FNHN8hg%3d%3d

위 SDK를 설치한 후에

using Microsoft.DirectX.AudioVideoPlayback;

를 이용하여~ 딱 3줄로.. 동영상 재생가능~~

1. 무작정 Visual Studio 2008을 띄우고 C# WinForm 프로젝트 생성
2. [Add Reference]에서 Microsoft.DirectX.AudioVideoPlayback를 추가해주고(DirectX는 깔려 있어야 함)
3. Form을 더블 클릭하고 다음과 같이 쳐준다.

using Microsoft.DirectX.AudioVideoPlayback;
private void Form1_Load(object sender, EventArgs e){
    Video v = Video.FromFile(@"c:\test.avi");
    v.Owner = this;
    v.Play();
}

4. F5를 누른다.

근데 안된다.

[Debug]-[Exceptions]-[LoaderLock]의 Thrown 항목을 꺼준다.

사용자 삽입 이미지

5. F5를 누른다.

사용자 삽입 이미지

ㅋㅋㅋ 성공 ….

[잡설]
이번 일주일간 WDM 디바이스 드라이버 프로그래밍 교육중이다.
Kernel Mode 프로그램에서는 좀만 잘못하면 블루 스크린…
오랜만에 보는 VisualStudio… 안보던 사이 많이 바뀌었었네…