[SVN] AnkhSVN 비쥬얼 스튜디오

Visual Studio사용하면 Source Safe가 좋은 이유는 환경과 "착~" 달라 붙어 동작되기 때문이다.
그간 버그가 많은 듯 하지만 아직 발견한 버그는 없다. 버젼은 AnkhSVN 2.1이다.
[다운받기]

[Tip]Windows 7 "장치 및 프린터" 아이콘 비쥬얼 스튜디오

아이콘 파일 포멧

장치 및 프린터의 아이콘

%LOCALAPPDATA%\Microsoft\Device Metadata\dmrccache\

%SystemRoot%\system32\DDOres.dll






설치 프로젝트에서 다국어 부트스트랩퍼 추가 하기 비쥬얼 스튜디오

Visual Studio 2008 기준임.


 

설치 파일을 만들 때, 설치 및 배포 프로젝트를 사용하여 설치파일을 만들 경우 필수 구성 요소 항목을 설정해준다. 이 때, 필수 구성요소의 부트스트랩퍼1) 가 추가 된다.


 

부트 스트랩퍼의 위치는 %ProgramFiles%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages 이다.


 

이때, 패키지를 만드는 로캘과 다른 부트스트랩퍼를 설치 할 경우, 해당 언어의 부트스트랩퍼가 없다면, 기본 로캘의 부트 스트랩퍼가 설치파일에 추가된다. 이때, 경고 메시지로 Could not match culture 'xx-YY' for item ' ~~~~~~~~~~~ '. Using culture 'zz' instead. 를 볼 수 있다.

다음 문서를 참고하면 해결 방법을 알 수 있다.


 

방법:패키지 매니페스트 만들기


 

위 문서를 보고 eula.txt와 package.xml을 작성하고 해당 언어의 부트스트랩퍼를 다운 받으면 된다.


 

  1. 애플리케이션에서 필요로 하는 필 수 프로그램(prerequisites)이 먼저 설치되어 있는지를 확인하는 작은 프로그램.

RFC 1928 : SOCKS 5 프로그래밍


http://www.ietf.org/rfc/rfc1928.txt


pilotProxy.7z

웹페이지 내에서 응용프로그램 런처 프로젝트/아키텍쳐설계

webluancher.zip

팁/테크에 가까운 게시물임.


 

웹페이지에서 응용프로그램을 실행 시켜야 할 때가 있다.

윈도우 마임타입(레지스트리 HKEY_CLASSES_ROOT)을 이용해서 파일의 확장자로 프로그램을 실행시키는 방법이다.

예로, 엑셀이 설치된 PC에서 XLS 파일을 다운 받으면, "열기"를 하여 엑셀을 실행 시킬 수 있는 이치를 이용한 것이다. 이 예에서 엑셀은 실행시킬 대상 응용프로그램이며, XLS파일은 웹에서 응용프로그램으로 전달하는 파라메터 데이터이다.


 

  1. 레지스트리에 다음을 등록한다. (로딩을 위해서 XP 이상에서는 로그오프를 해야 함.)

[HKEY_CLASSES_ROOT\.webluancher]

@="WebluancherFile"

[HKEY_CLASSES_ROOT\WebluancherFile]

[HKEY_CLASSES_ROOT\WebluancherFile\shell]

[HKEY_CLASSES_ROOT\WebluancherFile\shell\open]

[HKEY_CLASSES_ROOT\WebluancherFile\shell\open\command]

@="C:\\Program Files\\WebLuancher\\NOTEPAD.EXE %1"

  1. 웹에서 응용프로그램으로 전달할 list.webluancher파일을 작성한다.
  2. 링크로 데이터 파일을 링크한 HTML 파일을 작성한다.

<a href="list.webluancher" >webluancher</a>

  1. 브라우저에서 HTML 파일을 열고 링크를 클릭해 열기를 한다.


 

위에서 데이터파일의 webluancher 확장자는 식별할 수 있는 값으로 유일하여야 한다.


 

응용하기에 따라서, 데이터파일에 웹의 세션값이나 로그인 정보를 전달한다면 웹에서 인증된 정보를 응용프로그램으로 전달하여 재로그인을 방지할 수 있다. 물론, 데이터 파일을 암호화 한다면 더 완성도가 높아 질 것이다.


return은 개발자의 몫으로 남겨줘 볼랜드 C++ 빌더

bool IsTrue()

{

if(false)

{

return true;

}

}


 

if(IsTrue())

{

TRACE("TRUE");

}

else

{

TRACE("FALSE");

}


 

컴파일시에 warning은 발생하지만, 오류가 발생하지는 않는다.

무심코 실행시 함수의 반환값은 예측 할 수 없다. true일수도 false 일수도 있다. 니미!


 

(BC++ 6.0 기준.)


Tip&Tech in ‘10 볼랜드 C++ 빌더

  1. 리스트 박스 항목에서 툴팁 보이기

void __fastcall TForm1:: ListBox1MouseMove(TObject *Sender,

TShiftState Shift, int X, int Y)

{

TListBox *pListBox = dynamic_cast<TListBox*>(Sender);

if (pListBox != NULL)

{

static int iBeforeIdx = -1;

int iIndex = pListBox->ItemAtPos(TPoint(X, Y), true);

AnsiString str = pListBox->Items->Strings[iIndex];


 

//pListBox->Hint = ""; //이거 넣으면 툴팁이 안뜨네요.

if (iIndex >= 0

&& iBeforeIdx != iIndex

&&( Canvas->TextWidth(str) >pListBox->ClientRect.Width()) )

{

Application->CancelHint();

pListBox->Hint = str;

Application->ActivateHint(TPoint(X, Y));

}

iBeforeIdx = iIndex;

}

}


 



 


HTML5와 모바일웹앱 맥북/아이폰


Understading COM Event Handling 볼랜드 C++ 빌더

VS에서 COM 만들기 (Code Project)


http://www.codeproject.com/KB/COM/TEventHandler.aspx

VC++2008에서 만든 COM
    TEventHandler.zip


BC++ 빌더에서 VC로 만든 COM 이벤트 호출하는 예제
    pilotATLCOMEvent.zip

 


Sink COM Event Using TEventDispatch via C++ Builder 볼랜드 C++ 빌더


1 2