아직도 비베6을 쓰는 사람이 있겠냐고 하겠지만, 내가 일하는 장비업계에서는 과거에 만든 프로그램들이 비주얼스튜디오 6(C++,VB)로 된 것들이 꽤 있다.


비주얼 베이직 6.0 을 사용하다보면 다른 사람에게 주석을 제거하고 줘야 할 때가 있다.


그런데, 비주얼 베이직용 주석 제거 프로그램이 있나 찾아보니 없다..(내가 서치능력이 떨어지느듯..)

그래서 우선 내가 사용하기 위해 만들었다. 

파일을 불러와서 주석을 삭제한 후 저장하도록 만들었다.

기존 파일은 현재 불러온 파일의 경로 밑에 backup 폴더를 만든 후 백업을 하도록 했다.


이 프로그램이 필요한 사람은 누구나 무료로 사용해도 된다..


VB Comment Delete Project.exe



프로그램 개발툴 : C++ Builder 10.2



* 문제점 파악과 해결 결과를 표시 

 1. (2017.07.14, 16:00) 첫번째 버전을 사용하다보니 연속 라인으로 처리해 버리는 언더바(_) 문자가 있을 경우 처리하지 않는 경우가 있어 주석문자(`)가 나타난 후 언더바(_) 문자가 나올 경우에는 연속으로 주석을 지워버리도록 수정을 했다.

 2. (2017.07.14, 17:15) 또 다른 문제점 확인...

프로그램 상 문자열 처리 내의 ` 문자가 있을 경우 같이 지워버리는 문제가 발생됨.

우선은 문자열 처리 내의 주석 처리 부분은 지우지 않도록 수정..

주석을 지우는 것도 중요하지만, 프로그램이 정상 동작하는 것이 우선이기에..

이에 대한 예외 조건 처리는 시간 날 때 다시 해야겠다.. 우선은 다른 일부터 해야 되기에..

(2017.07.15:12:30) 처리 완료. 추가로 첫번째 문자에 주석 처리 문자가 있을 경우에는 문자열 처리라도 무조건 주석으로 처리하도록 변경.

 --------- 이상  -------------

 

AnsiString 메소드 정리

* AnsiCompare
현재 문자열과 파라미터로 지정한 문자열의 크기를 비교하여 결과를 되돌려 줍니다.
이때 파라미터로 지정된 문자열은 AnsiString 문자열과 비교하여 AnsiString 문자열보다 크면 0보다 큰수를 반환하고, 작을경우에는 0보다 작은수를 , 같으면 0을 반환합니다.
원형
 int __fastcall AnsiCompare(const AnsiString & rhs) const;

Ex 
AnsiString strCompare = "AAA";
int nReturn;
nReturn = strCompare.AnsiCompare("BBB");
if (nReturn > 0) ShowMessage("값이 큽니다.\n");
else if (nReturn > 0) ShowMessage("값이 작습니다.\n");
else  ShowMessage("값이 같습니다.\n");      

Result
값이 작습니다.


...............

[참고] http://bcbjournal.org/articles/vol1/9708/An_AnsiString_class_reference.htm
아래 부분 참고...

DLL을 작성하다 보면 DLL을 호출하는 부분이 누구인지 궁금할 때가 있다.
이럴때 DllMain 부분을 다음과 같이 작성하면 누가 호출하는지 알수가 있다..
VCL과 MFC에서 사용하는 방법이 조금 다르다... 다음은 MFC에서 사용하는 방법으로 작성하여 본 것이다..

VCL에서는 호출하는 정의가 조금 다르다.. 그래서.. DLL_PROCESS_ATTACH 부분이 조금 다르다...

VCL : int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
MFC : BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fwdreason, LPVOID lpvReserved)





아래는 참고 내용이다..

DllMain


 
요약: When trying to creating a simple C++ designtime package that might refer to ‘DesignIntf’,’DesignEditors, the Delphi compiler complains that 'DesignIntf.dcu' and 'Proxies.dcu'cannot be found.

When trying to compile a C++ package that refers to DesignIntf, DesignEditors in say, a pascal unit you might see errors as follows:

[DCC Error] XXXX.pas(X): F1026 File not found: 'DesignIntf.dcu'


Or if you add the DesignEditors.pas location to the project’s "search path", the error is:

[DCC Error] DesignEditors.pas(609): F1026 File not found:'Proxies.dcu'

This issue is documented in readme for BDS2006. This is the note from BDS 2006's readme file:

 

C++ Notes
If you are creating a C++ Package that contains a Delphi unit thatuses the DesignIntf and DesignEditors tools, you must choose Project|Options|Pascal Compiler|Other Options and then add
"-LUDesignIDE" for the compiler to work correctly.

So in CB2007/RAD Studio 2007, all you need to do is:

Project|Options|Pascal Compiler|Other Options|"Use these packages when
compiling", then add "DesignIDE" in the combobox. 

Author: Roy Nelson

Virtual Tree View 테스트 프로그램..

참고 문서를 보고 작성해 봄..

Ini 파일을 섹터별로 읽을수 있도록 함.
(우선은 Setup.ini 파일만 읽을수 있음.. 추후.. 파일을 불러서 읽을수 있도록 변경 예정)

Add-on으로 제공되는 VirtualIniTree를 사용하지 않음.. (몇가지 조건이 달라서... 추후 이 컴포넌트도 테스트 예정)

밑의 INI Generator 파일의 생성시 검사 해보기 위해 작성함...



사용자 삽입 이미지





'1.소프트웨어 이야기 > devkyy.My Develope Program' 카테고리의 다른 글

CSV File to C++ Source & Ini File Generator  (2) 2009.05.22
Code Generator 업데이트  (1) 2008.01.11
GUI TEST  (0) 2007.12.27
이전에 만들었던 프로그램 수정본..

프로그램에서 불러서 저장하기 전에 미리 ini 파일을 미리 만들어 볼수 있도록 추가..
ini파일 작성시 설명 부분과 변수 설정 부분을 추가로 만들수 있도록 함.



사용자 삽입 이미지


CODEGene.zip





'1.소프트웨어 이야기 > devkyy.My Develope Program' 카테고리의 다른 글

Virtual Tree Test 프로그램..  (1) 2008.01.11
GUI TEST  (0) 2007.12.27
간단한 TCP/IP 테스트  (0) 2007.12.06
매일 사용하는 RAD STUDIO 화면이 가끔 지겨울때 하는 짓...

리소스 에디터로 조금 수정해서 사용...

약간은 외설(?)스럽다고 할지도 모르겠네...

근데.. 이건 미술품인데..
사용자 삽입 이미지

'1.소프트웨어 이야기 > 00.VCL(C++ Builder, Delphi)' 카테고리의 다른 글

LoadLibraryEx  (0) 2008.03.20
조합키를 사용법  (0) 2008.01.10
[팁]W8057이 보기 싫을때..  (0) 2008.01.10

+ Recent posts