운동하는 개발자 (195) 썸네일형 리스트형 Python for문 변수 두 개 사용하기(값, 카운트) 내가 나중에 보려고 올리는 기초 문법입니다 for문에서 해당 변수값과 카운트를 두개 변수로 한꺼번에 보는법 temp = ['a','b','c','d'] #앞의 변수가 카운트, 뒤의 변수가 값 for cnt,val in enumerate(temp): print(str(cnt) + " / " + val) #결과 # 0 / a # 1 / b # 2 / c # 3 / d #물론 아래와 같이 인덱스로 접근도 가능하나 파이썬스럽지 못하다 for cnt in range(0, len(temp)): print(str(cnt) + " / " + temp[cnt]) mfc140.dll이(가) 없어 코드 실행을 진행할 수 없습니다. 위와 같은 에러 창 발생 시 재배포 가능 패키지가 설치되어 있지 않는 경우이다 https://www.microsoft.com/ko-KR/download/details.aspx?id=53840 Download Microsoft Visual C++ 2015 재배포 가능 패키지 Update 3 from Official Microsoft Download Center 중요! 아래에서 언어를 선택하면 전체 페이지 내용이 해당 언어로 신속하게 변경됩니다. 독일어러시아어스페인어영어이탈리아어일본어중국어(간체)중국어(번체)체코어터키어포르투갈어(브라 www.microsoft.com 해당 링크에서 x64를 받아서 실행했더니....? 이미 설치되어있습니다 라고 뜨고 제어판으로 들어가 보았더니...? 정말 설치가 되어있었다 원인.. 델파이 크리티컬세션 사용법 / delphi criticalsection (for multiThread) 멀티스레드의 환경을 개발하는 경우 여러 쓰레드가 같은 파일에 접근하거나 상태 값, 인덱스 값 등을 갱신/읽기 하려는 경우가 많이 있다 이때 자칫하다간 원하는 대로 동작하지 않거나 access violation이 발생하기도 한다 이를 방지하기 위해 동시에 접근하는 메모리,변수 등에 크리티컬섹션을 걸어서 충돌을 방지하자 선언부 uses windows; var CriticalSection: TRTLCriticalSection; ~~~~~~~~~ ~~class~~ ~~~~~~~~~ initialization InitializeCriticalSection(CriticalSection); finalization DeleteCriticalSection(CriticalSection); 사용부분 workSum : Int.. error: internal error 200601281 잘 작동하던 코드에서 어느날 컴파일 에러가 발생했다 error: internal error 200601281 라는 문구가 나오며 해당 라인에는 클래스에서 사용하는 const로 선언된 변수가 있는 부분이였다 단지 로그 찍을때 편하게 클래스 명을 찍으려고 둔.. 구글링 해보니 나와 아주 똑같은 에러가 뜬 사람은 없고 (200601281 저 숫자가 무엇을 뜻하는지도 모르겠음 에러코드라기엔 너무 길고 메모리 주소값 같기도하고..) 숫자만 다르고 같은 에러를 발생하는 사람이 있었다 https://forum.lazarus.freepascal.org/index.php?topic=39507.15 링크가 언제까지 살아있을지 모르니 결론만 퍼오자면 저사람은 error: internal error 200611031 라는 에.. lazarus dcpcrypt 암호화 오작동 (use external debug symbols file) 소스 merge후부터 http 통신이 100%실패하는 문제가 있었다 서버측에서 확인해보니 복호화 후 데이터가 비정상적이였으며 결론적으론 암호화에 실패한것이다 (별도로 에러가 발생하지도 않았다..) merge할 때 놓친 코드가 있나 몇번을 다시 찾아봐도 찾을 수 없었고 전문 생성시 잘못된것이 있나 로그를 엄청나게 추가해봐도 특이점이 없었다 그럼 정상작동하는 프로젝트와 프로젝트 옵션을 하나하나 비교해보는데.. 최근 merge작업 후 각각의 프로젝트가 다른 모드에서 빌드되도록 빌드모드를 추가했었다 project->project options->compiler Options에서 추가하였는데 이때 단순히 +버튼을 눌러 추가 생성하면 기존 설정을 복사해와 추가 생성되는데 'Create Debug and Releas.. http server와 TCP server 포트 중복이 가능할까? (http port & TCp Port) 기존에 TCP와 UDP는 포트가 중복으로 동시 사용이 가능한것으로 알고있었으나 Http(웹통신)과 TCP는 포트 중복이 가능한지 여부는 모르고있었기에 직접 실험해보았다 FWebServer:TIdHTTPServer; //indy 웹서버 FTCPServer:TIdTCPServer; //indy tcp 서버 FTCPServer.DefaultPort := 2080 FTCPServer.Active := True; FWebServer.DefaultPort := 2080 FWebServer.Active := True; 결과는 active True에서 excption이 발생했다 포트 중복은 불가능 원인을 찾아보니 Http통신도 파고파고 들어가다보면 결국 TCP기반이며 TCP통신 종류 중 하나라고 볼 수 있는것이였다 T.. 라자루스 스레드 종료 기다리기 / lazarus wait for thread terminate 종종 특정 스레드가 확실히 종료되고 메인 프로세스가 진행되야 하는 경우가 있습니다 예를들어 버튼을 누르면 파일을 읽고 다른버튼을 누르면 파일을 쓰는 프로그램이 있다면 write하는중에 또 write명령이 오면 동일 파일 접근으로 충돌이 발생하겠죠 이럴 때 write쓰레드가 종료되길 기다릴때 사용가능합니다 //리눅스 환경 WaitForThreadTerminate(FFileWriteWorker.ThreadID, 0); //윈도우 환경 WaitForThreadTerminate(FFileWriteWorker.Handle, 0); 함수 자체는 쓰레드아이디를 넘기든 핸들을 넘기든 상관없다고 되어있는데 윈도우10 환경에선 ThreadID를 넘길경우 동작하지 않는것을 확인하였습니다 델파이 windows10 한글 깨짐 / edit 창 한글 커서 오류 (d2codingfont) ● 발생 환경 - 델파이 2010, XE5 - 윈도우7에서는 문제없으나 윈도우10으로 사용시 문제 발생 ● 현상 위와 같이 문자열을 한글로 입력시 커서가 딴데 있을때는 정상적으로 표출됨 위와같이 커서가 해당 라인에 들어가면 커서의 위치와 괄호의 위치가 비정상적으로 표시 TMI 더보기 괄호의 위치로 추측하건데 한글도 똑같이 1바이트로 계산하여 괄도 닫는곳이 한글 글자수x칸 만큼 앞으로 당겨져 보였다 ● 문제해결 결과적으로 기본 폰트의 오류 였다 Tools-> Options 를 들어가서 Editor Options->Display탭에서 Editor font를 보면 디폴트로 Courier New가 설정되어있는데 이를 변경시켜주면 된다 나는 네이버의 D2Coding폰트가 가독성이 좋다 하여 해당폰트를 다운받았다 .. 이전 1 ··· 11 12 13 14 15 16 17 ··· 25 다음