본문 바로가기
반응형

 VB6 11 

img-skin-thumnail [VB6] 프로젝트 참조와 프로젝트 구성요소 이해하기 VB6에서의 프로젝트 참조와 프로젝트 구성요소 이해하기 포스팅 개요오늘 포스팅할 프로젝트 참조와 프로젝트 구성요소 메뉴는 VB6에서 각각의 장단점을 가지고 있으며, 프로젝트의 요구사항과 개발 환경에 따라 적절히 선택하여 사용해야 하는 중요한 메뉴입니다. 요구조건에 따라 프로젝트 참조는 외부 라이브러리나 프로젝트의 기능을 사용하고자 할 때 효율적이며, 프로젝트 구성요소는 사용자 인터페이스의 향상이나 특정 기능의 통합이 필요할 때 유용합니다. 이에 개발자는 프로젝트의 요구사항과 목표에 맞추어 두 가지 방법 중 하나 또는 둘 다를 현명하게 선택하여 사용해야 합니다. 예를 들어, 공통 기능을 제공하는 라이브러리는 프로젝트 참조를 통해 통합하고, 사용자 인터페이스를 개선하기 위한 ActiveX 컨트롤은 프로젝트 .. 2024. 5. 9.
img-skin-thumnail [VB6] Windows에서 DLL 호출 시 검색 순서의 중요성 Windows에서 DLL 호출 시 검색 순서의 중요성 포스팅 개요 오늘은 Windows에서 DLL(Dynamic Link Library) 호출 시 특정 DLL을 어떻게 찾는지 그리고 그 순서가 왜 중요한지에 대해 이야기해보려 합니다. 이 내용은 보안 및 기능적 측면에서 매우 중요하므로 한 번쯤 읽어보시는걸 추천드립니다. 그럼 개념의 이해를 돕기위해 아래의 2가지 목록으로 금일 포스팅을 진행하겠습니다. Windows에 정의된 기본적인 DLL 검색 순서 Windows에서 DLL 검색 순서를 변경하는 방법 Windows에 정의된 기본적인 DLL 검색 순서 Windows는 애플리케이션이 필요로 하는 DLL을 올바르게 찾기 위해 지정된 경로 순서를 따릅니다. 이를 통해 애플리케이션은 필요한 DLL을 정확히 찾아 .. 2023. 11. 7.
img-skin-thumnail [VB6] 콤보박스(ComboBox) 길이 제한 해제 및 조절하기 콤보 박스(ComboBox) 길이 제한 해제 및 조절하기 포스팅 개요 VB6에서의 콤보 박스는 정말 애증이 필요한 컨트롤입니다. 많이 사용하면서도 기능은 빈약하고 기본 컨트롤이면서 다른 컨트롤에 맞춰 배치하기가 정말 어렵습니다. 오늘 포스팅에서는 이 콤보 박스의 장단점과 드롭다운 상태에서 아이템 리스트 길이 제한, 표기 건수 제한을 모두 해제하는 함수를 소개해드리겠습니다. 콤보 박스의 장점으로는 기본 컨트롤로 별다른 참조가 필요 없어 접근성이 좋고 옵션 변경이 쉬운 편입니다. 콤보 박스의 단점으로는 컨트롤의 크기 변경이나 디자인 변경이 힘들어 깔끔한 배치가 어렵습니다. 아이템을 등록하고 리스트를 펼칠 때 아이템 수가 8개가 넘어가면 스크롤이 강제로 생깁니다. 콤보 박스의 너비(Width)는 자유롭게 수정.. 2023. 1. 6.
img-skin-thumnail [VB6] InputBox의 공백("")과 취소(Cancel) 구분하기 InputBox의 공백("")과 취소(Cancel) 구분하기 포스팅 개요 Inputbox의 MSDN을 확인하면 "[취소] 단추를 누르면 함수는 길이가 0인 문자열("")을 반환"이라는 문구가 존재합니다. 프로그래머가 실제로 공백을 [취소]와 같은 의미로 취급한다면 이는 별 문제가 없습니다. 하지만 빈 문자열을 입력해야 되는 경우라면 결국 [취소]와 [확인]으로 등록한 빈 문자열을 구별해야 됩니다. 실제 테스트를 해보면 Inputbox 함수 사용 시 [취소] 동작에서 vbNullString이 반환되는 것을 알 수 있습니다. 이를 근거로 유니코드 문자열 버퍼의 주소를 반환하는 StrPtr 함수를 이용하여 구별해 보겠습니다. 예제 코드 작성 StrPtr로 vbNullString의 버퍼 주소를 반환하면 0으로 .. 2022. 12. 28.
img-skin-thumnail [VB6] 시스템 시간을 밀리초(Millisecond)까지 가져오기 시스템 시간을 밀리초(Millisecond)까지 가져오기 포스팅 개요 우리가 흔히 밀리세컨드라고 부르는 이 밀리초는 VB 기본 함수로는 표현이 어렵습니다. 시간을 표현하는 대표적인 함수인 Now 함수도 밀리초를 가져오지 않습니다. 따라서 오늘 포스팅에서는 내장 함수가 아닌 DLL 프로시저를 선언하여 밀리초를 가져오는 예제 코드를 작성하도록 하겠습니다. 다른 사이트의 예제를 보면 Timer 내장 함수를 이용한 코드도 있습니다. 'Right(Format(Timer, "#.000 "), 4)'와 같은 방법인데 개인적으로는 사용하지 않는 편입니다. 예제 소스 코드 디자인 및 참고할 주요 컨트롤 Textbox : Text1 Timer : Timer1 (Interval은 100) 디자인을 완성한 폼으로 예제 코드를.. 2022. 12. 21.
img-skin-thumnail [VB6] Visual Basic 6 코드 입력창에서 사용되는 단축키 모음 Visual Basic 6 코드 입력창에서 사용되는 단축키 모음 포스팅 개요 VB 개발 환경에서 작업을 편하게 도와주는 단축키 모음입니다. Windows에서 사용이 겹치는 단축키와 VB에서만 사용하는 단축키가 있으니 잘 살펴보시고 사용하셔야 됩니다. 또한 주요 단축키를 손에 익혀두면 작업속도와 정확도가 향상되니 저절로 익혀지는 단축키 외에 유용한 단축키는 숙지하시는 것도 방법입니다. 단축키 정리표 특수키와 조합키가 존재하는 단축키 정리표입니다. 단축키 설명 F1 선택된 항목의 도움말 보기 F2 개체 찾아보기 F3 (다음)찾기 F4 속성창으로 이동하기 F5 실행하기 F7 코드창으로 이동하기 F8 한 단계씩 코드 실행 F9 중단점 설정/해제 CTRL+F5 전체 컴파일한 후 다시 시작하기 CTRL+F9 현재 .. 2022. 12. 20.
img-skin-thumnail [VB6] SendKeys 명령의 사용법과 특수키, 조합키 코드표 SendKeys 명령어의 사용법과 특수키 조합키 코드 포스팅 개요 SendKeys 명령어는 사용자가 활성 창에 키보드를 누른 것과 같은 효과를 주는 명령어입니다. 키보드에 있는 영문자나 숫자키 외에 [Enter], [Esc] 등과 같은 특수키도 전송이 가능하게 도와주며 이와 함께 [Shift], [Ctrl], [Alt]와 같은 조합키 코드도 전송이 가능합니다. 잘 활용하면 단순 코딩으로 하기 힘든 동작을 대체 할 수 있으며 메크로와 같은 효과도 줄 수 있습니다. 만약 '70' 런타임 오류가 발생했습니다. 사용 권한이 없습니다 오류 발생 시 아래 링크를 참고하시면 됩니다 2022.12.16 - [Programming/문제해결] - [VB6] Win10 이상 SendKeys 내장 함수 오류 대응 [VB6] .. 2022. 12. 19.
img-skin-thumnail [VB6] 한글을 2바이트 계산하여 문자열 자르기 (Len, Left, Right, Mid 대체) 한글을 2바이트 계산하여 문자열 자르기 (Len, Left, Right, Mid 대체) 포스팅 개요 VB에서 기본으로 제공하는 내장 함수 중 문자열을 자르는 대표적인 함수 3종(Right, Left, Mid)과 문자열 길이를 측정하는 함수 1종(Len)이 있습니다. 이 함수들의 바이트로 길이를 체크하는 것이 아니라 문자수를 길이로 취급하기에 2바이트로 생성되는 한글조차 1글자로 취급합니다. 이러한 문제 때문에 한글이 들어간 문자열을 DB에 등록하는 경우 입력하고자 하는 내용이 커서 오류가 생기는 경우가 종종 생깁니다. 오늘 포스팅에서는 내장 함수를 대체하는 사용자 함수를 준비해 보았습니다. StrConv 함수를 활용하는 다른 방법도 있으니 필요하신 분은 따로 검색해보셔도 될 거 같습니다. 예제 소스 코드.. 2022. 12. 17.
img-skin-thumnail [VB6] 폴더 생성 (경로에 포함 된 모든 폴더 생성) 폴더 생성 (경로에 포함된 모든 폴더 생성) 포스팅 개요 프로그램 코딩을 하다 보면 원하는 경로에 반드시 폴더를 만들어야 하는 경우가 있습니다. VB에서는 MkDir 명령어를 제공하지만 폴더를 생성하는 기능만 존재하기에 만들어질 폴더 존재 여부를 체크하는 것부터 경로상에 없는 폴더까지 체크하는 기능을 손수 다 구현해야 됩니다. 이러한 문제점을 해결한 모듈을 오늘 포스팅 예제로 만들어보았습니다. 상세 소스 코드 소스 코드 안에 Module(.bas)을 선택해 해당 서브 프로시저를 추가 Public Sub MakeDir(ByVal Path As String) On Error Resume Next Dim strTmp() As String Dim i As Long, j As Long Dim sDir As Str.. 2022. 12. 16.
728x90
반응형