Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 74. VS.NET - 매크로 함수 내에서 클립보드 API 사용 [링크 복사], [링크+제목 복사],
조회: 12985
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

VS.NET - 매크로 함수 내에서 클립보드 API 사용


VS.NET에서 제공되는 매크로 함수에서 클립보드를 접근하기 위해서는 .NET BCL에서 제공되는 클립보드 관련 클래스를 이용해서 다음과 같이 사용할 수 있습니다.

Sub InternalSetClipboardData()
	Clipboard.SetText("클립보드 예제")
End Sub

해보신 분들은 아시겠지만. ^^ 대개 다음과 같은 식의 오류 화면이 뜨고 맙니다.

when_macro_execute_clipboard_api_1.png

말 그대로입니다. OLE 관련 호출은 "MTA"가 아닌 "STA"로 초기화된 스레드에서 실행되어져야 하기 때문에 이와 같은 문제가 발생하는 것입니다.

해결책은... ^^ 다음의 토픽에서 제공되는 코드를 활용하시면 됩니다.

Copying Visual Studio code snippets to the clipboard as HTML
; http://www.codinghorror.com/blog/archives/000429.html

어떻게 하는지 간략하게 코드를 실어보겠습니다.

Sub CopyToClipboard()
    Dim thread As New Threading.Thread(AddressOf InternalSetClipboardData)
    thread.ApartmentState = Threading.ApartmentState.STA
    thread.Start()
    thread.Join()
End Sub

Sub InternalSetClipboardData()
    Clipboard.SetText("클립보드 예제")
End Sub





[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 3/3/2023]


비밀번호

댓글 작성자
 




... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
134정성태11/15/200510689Microsoft SQL Server Management Studio Express - Community Technical Preview (CTP) November 2005 [1]
242정성태4/19/200611049    답변글 정식 릴리스 - Microsoft SQL Server Management Studio Express
243정성태4/19/200610343    답변글 Microsoft SQL Server 2005 Express Edition Toolkit
245정성태4/19/200610828    답변글 Microsoft SQL Server 2005 Express Edition Service Pack 1
133정성태10/30/200510867VS.NET TS 버전을 제외하고 전부 나왔습니다. ^^
132정성태10/28/200511085IE Script 에서 ADO.Stream 개체를 사용 허가 유무를 지정.
131정성태10/27/200510535ASP.NET Spiced: AJAX
130정성태10/26/200512051RSA In JavaScript [1]파일 다운로드1
128정성태10/25/200510703Connecting to MS SQL Server from Unix파일 다운로드1
129정성태10/25/200510508    답변글 [추가]: SQL Server 2005 JDBC Driver Beta 2 Now Available
173정성태1/20/200610302        답변글 정식 릴리스: Microsoft SQL Server 2005 JDBC Driver
127정성태10/21/20051078764-bit Windows ; 언제, 그리고 왜 써야 할까?
126정성태10/19/200511234WSE(Web Services Enhancements) 3.0의 새로운 기능
125정성태10/14/200511179Cluster 가능한 StateServer 세션 관리자
124정성태10/14/200511294MapPoint Web Service SDK Version 4.0 for Visual Studio .NET 2003
123정성태10/14/200510984alpha release of the Python programming language for the .NET platform
161정성태1/3/200610941    답변글 [추가]: Beta release
184정성태8/12/200611469    답변글 Beta3 까지. ^^
190정성태3/10/200610828    답변글 Beta 4
221정성태3/31/200611038    답변글 Beta 5
246정성태4/21/200610949    답변글 Beta 6
295정성태5/24/200610034    답변글 Beta 7
122정성태10/13/200510818Determine whether service packs are installed on the .NET Framework
121정성태10/12/200510363.NET Reference Guide - 웹
120정성태11/14/200510916VS.NET Automation 과 VSIP
119정성태10/9/200510477Internet Information Services (IIS) 6.0 Resource Kit Tools (English)
... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...