부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. (연관된 글이 2개 있습니다.) 도서: 시작하세요! C# 12 프로그래밍 기존에 출판되었던, 시작하세요! C# 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/24/goods/11257753 시작하세요! C# 6.0 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/24/goods/19427525 시작하세요! C# 7.1 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/24/goods/48156128 시작하세요! C# 7.3 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/Product/Goods/73031673 시작하세요! C# 8.0 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/Product/Goods/82590356 시작하세요! C# 9.0 프로그래밍 기본 문법부터 실전 예제까지 ; http://www.yes24.com/Product/Goods/97314203 시작하세요! C# 10.0 프로그래밍 기본 문법부터 실전 예제까지 ; https://www.yes24.com/Product/goods/114854152 "시작하세요! C# 프로그래밍"의 12 개정판이 나왔습니다. 위키북스 - 시작하세요! C# 12 프로그래밍: 기본 문법부터 실전 예제까지 ; https://wikibook.co.kr/cs12/ Yes24 - 시작하세요! C# 12 프로그래밍 기본 문법부터 실전 예제까지 ; https://www.yes24.com/Product/Goods/125905684 이번 개정판부터는, .NET Framework 관련 내용을 제거하고 .NET 8 위주로 정리했습니다. 하지만 기존 .NET Framework 관련 내용들을 원하시는 분들이 계실 듯해서 아예 제거하기보다는 무료 배포하는 PDF 파일에 3부의 내용과 함께 부록으로 포함시켰습니다. 공개된 3부 및 부록 - PDF 파일 ; https://www.sysnet.pe.kr/book/cs12_free.pdf 책에서 혹시 이해가 안 되거나 궁금하신 부분이 있는 경우 다음의 게시판을 활용해 질문을 주시면 답변을 드리도록 하겠습니다. (물론, 오타나 문장이 이상한 부분이 있는 것도 게시판을 통해 알려주시면 반영하겠습니다.) 질문 답변 게시판 ; https://www.sysnet.pe.kr/3/1 책에 있는 예제는 github에 공개했습니다. .NET 8용 소스코드 ; https://github.com/stjeong/cs12_sample * 소스코드를 비주얼 스튜디오 2022에서 열은 후, 테스트하고 싶은 프로젝트를 "시작 프로젝트로 설정" 메뉴로 지정하면 됩니다. ("시작 프로젝트로 설정" 메뉴에 대해서는 책의 295페이지에 있는 "Note" 내용에서 좀 더 자세하게 알 수 있습니다.) * 처음 CSharp12.sln 솔루션을 로드 후 빌드하면 오류가 발생할 수 있습니다. 일부 프로젝트의 경우 NuGet 패키지 구성 시간이 걸려 그런 것이므로 1~2분 정도 후에 다시 빌드하면 됩니다. 6장에서 만드는 SQL 데이터베이스 파일 ; https://www.sysnet.pe.kr/book/cs12_book_db_file.zip 압축을 풀면 나오는 "CSharp12.sln" 파일을 비주얼 스튜디오 2022에서 열면 다음과 같이 솔루션 탐색기(Solution Explorer)에서 장(Chapter) 별로 나누어져 있어 찾기 편하도록 구성했습니다. 소스코드 프로젝트 중에서 11장까지는 책에서 "예제" 제목이 달린 소스코드마다 완전히 실행 가능한 C# 프로젝트를 만들었습니다. 또한, "예제" 제목이 달리지 않은 소스코드도 모두 "부가코드-[번호].txt"라는 파일에 담아 두었습니다. 각각의 txt 파일도 복사해서 붙여넣으면 컴파일이 되는 하나의 독립적인 예제입니다. 반면 12장 ~ 20장은 "예제" 제목이 달린 프로젝트가 해당 절에 포함된 소스코드와 일치합니다. 이번에도 책에 포함된 모든 그림 파일을 다음의 경로에 공개해 두었습니다. 책에 포함된 그림 ; https://www.sysnet.pe.kr/book/cs12_img.zip 캡쳐된 그림 이외에 다이어그램을 그리기 위해 사용한 PPT 파일도 아래에 공개했습니다. (일부 다이어그램은 출판사 측에서 인쇄를 위해 재편집을 했기 때문에 원본과 다를 수 있습니다.) 다이어그램 원본 PPT 파일 ; https://www.sysnet.pe.kr/book/cs12_diagram.pptx (혹시 이 파일에 실린 다이어그램을 좀 더 멋지게 그리셨다면 제 책에 실을 수 있도록 공유 부탁드립니다. ^^) 마지막으로, 공개된 PDF의 3부 내용에 대해서는 책의 서문에 쓴 내용을 공지합니다. 이 중에서 3부의 내용은 좀 더 부가 설명이 필요하다. 필자가 쓴 책은 C# 5.0을 대상으로 처음 쓰여졌으며 3부의 내용은 원래 그 책에 포함돼 있던 내용이다. 하지만 C# 6.0을 포함한 개정판이 나오면서 책의 분량이 늘어나는 것을 고려해 3부의 내용을 제외시켜 무료 PDF 문서로 공개했고 이번 C# 10 책에서도 포함하지 않았다. 종이책으로 꾸준히 출판한 1부, 2부와는 달리 3부의 내용은 C# 5.0 책이 쓰여졌던 시점 이후로 업데이트되지 않았기 때문에 3부의 내용 중 일부는 개발 환경의 변화로 달라졌을 수 있음을 미리 말씀드린다. 정리하면, 3부의 내용 중 모바일 부분은 거의 실습을 할 수 없을 것입니다. 그래도 다음의 사이트에 소스코드가 공개되어 있으니 참고하실 수 있습니다. OfficePresenter 소스코드 ; https://github.com/stjeong/OfficePresenter (다운로드 방법: 위 링크의 우측 하단에 "Download ZIP" 버튼을 누르면 됩니다.) [정오표] * 1부 정오표 * 위치 변경 전 변경 후 내용 없음 6.6.7 비동기 호출 해당 절의 전체 내용은 .NET Framework 환경에서만 실습할 수 있습니다. 다음 개정판에서는 6.6.7절은 책에서 제거하고 무료 PDF로 옮겨질 것입니다. (참고: https://www.sysnet.pe.kr/3/1/13) * 2부 정오표 * 위치 변경 전 변경 후 16.3 새로운 연산자 - 인덱스, 범위 (803 페이지 마지막 예제 코드) // txt = txt[Range.Create(new Index(1, false), new Index(1, true))]; // txt = txt[new Range(new Index(1, false), new Index(1, true))]; (참고: https://www.sysnet.pe.kr/3/1/14) 20.2 기본 생성자 (935 페이지) 전제 내용 수정 사항이 많아 별도의 글("C# 12 - 기본 생성자(Primary constructors) 오타 수정")로 작성했습니다. (참고: https://www.sysnet.pe.kr/3/1/14) 20.7 Interceptor(컴파일 시점에 메서드 호출 재작성) (946 페이지) [페이지 상단의 첫 번째 예제 코드] static void ProgramMethod() static void Method() (참고: https://www.sysnet.pe.kr/3/1/14#17226) [다음 글] 오류 유형: 821. windbg/sos - Error code - 0x000021BE[이전 글] .NET Framework: 2058. [in,out] 배열을 C#에서 C/C++로 넘기는 방법 - 세 번째 이야기 [연관 글] c# 12 책 내용중에 궁금사항이 있네요C#12 기본 생성자가 뭔가 내부 필드를 만드는 것 같습니다. [최초 등록일: 10/18/2022] [최종 수정일: 8/21/2024] 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다. by SeongTae Jeong, mailto:techsharer at outlook.com 비밀번호 댓글 작성자 ... 61 62 63 64 65 66 67 68 69 70 [71] 72 73 74 75 ... NoWriterDateCnt.TitleFile(s) 12162정성태2/26/202021879디버깅 기술: 166. C#에서 만든 COM 객체를 C/C++로 P/Invoke Interop 시 메모리 누수(Memory Leak) 발생 [6]212161정성태2/26/202017931오류 유형: 597. manifest - The value "x64" of attribute "processorArchitecture" in element "assemblyIdentity" is invalid.12160정성태2/26/202018273개발 환경 구성: 469. Reg-free COM 개체 사용을 위한 manifest 파일 생성 도구 - COMRegFreeManifest12159정성태2/26/202015367오류 유형: 596. Visual Studio - The project needs to include ATL support12158정성태2/25/202017957디버깅 기술: 165. C# - Marshal.GetIUnknownForObject/GetIDispatchForObject 사용 시 메모리 누수(Memory Leak) 발생112157정성태2/25/202017986디버깅 기술: 164. C# - Marshal.GetNativeVariantForObject 사용 시 메모리 누수(Memory Leak) 발생 및 해결 방법112156정성태2/25/202016563오류 유형: 595. LINK : warning LNK4098: defaultlib 'nafxcw.lib' conflicts with use of other libs; use /NODEFAULTLIB:library12155정성태2/25/202016015오류 유형: 594. Warning NU1701 - This package may not be fully compatible with your project12154정성태2/25/202015397오류 유형: 593. warning LNK4070: /OUT:... directive in .EXP differs from output filename12153정성태2/23/202019525.NET Framework: 898. Trampoline을 이용한 후킹의 한계112152정성태2/23/202018576.NET Framework: 897. 실행 시에 메서드 가로채기 - CLR Injection: Runtime Method Replacer 개선 - 세 번째 이야기(Trampoline 후킹)112151정성태2/22/202019380.NET Framework: 896. C# - Win32 API를 Trampoline 기법을 이용해 C# 메서드로 가로채는 방법 - 두 번째 이야기 (원본 함수 호출)112150정성태2/21/202019631.NET Framework: 895. C# - Win32 API를 Trampoline 기법을 이용해 C# 메서드로 가로채는 방법 [1]112149정성태2/20/202018422.NET Framework: 894. eBEST C# XingAPI 래퍼 - 연속 조회 처리 방법 [1]12148정성태2/19/202020952디버깅 기술: 163. x64 환경에서 구현하는 다양한 Trampoline 기법 [1]12147정성태2/19/202018628디버깅 기술: 162. x86/x64의 기계어 코드 최대 길이12146정성태2/18/202019387.NET Framework: 893. eBEST C# XingAPI 래퍼 - 로그인 처리112145정성태2/18/202019246.NET Framework: 892. eBEST C# XingAPI 래퍼 - Sqlite 지원 추가112144정성태2/13/202019459.NET Framework: 891. 실행 시에 메서드 가로채기 - CLR Injection: Runtime Method Replacer 개선 - 두 번째 이야기112143정성태2/13/202016003.NET Framework: 890. 상황별 GetFunctionPointer 반환값 정리 - x64112142정성태2/12/202018389.NET Framework: 889. C# 코드로 접근하는 MethodDesc, MethodTable112141정성태2/10/202017405.NET Framework: 888. C# - ASP.NET Core 웹 응용 프로그램의 출력 가로채기 [2]112140정성태2/10/202017959.NET Framework: 887. C# - ASP.NET 웹 응용 프로그램의 출력 가로채기112139정성태2/9/202019203.NET Framework: 886. C# - Console 응용 프로그램에서 UI 스레드 구현 방법12138정성태2/9/202023235.NET Framework: 885. C# - 닷넷 응용 프로그램에서 SQLite 사용 [6]112137정성태2/9/202016448오류 유형: 592. [AhnLab] 경고 - 디버거 실행을 탐지했습니다. ... 61 62 63 64 65 66 67 68 69 70 [71] 72 73 74 75 ...