Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 74. VS.NET - 매크로 함수 내에서 클립보드 API 사용 [링크 복사], [링크+제목 복사],
조회: 17057
글쓴 사람
정성태 (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/200512521Microsoft SQL Server Management Studio Express - Community Technical Preview (CTP) November 2005 [1]
242정성태4/19/200612870    답변글 정식 릴리스 - Microsoft SQL Server Management Studio Express
243정성태4/19/200612157    답변글 Microsoft SQL Server 2005 Express Edition Toolkit
245정성태4/19/200612621    답변글 Microsoft SQL Server 2005 Express Edition Service Pack 1
133정성태10/30/200512626VS.NET TS 버전을 제외하고 전부 나왔습니다. ^^
132정성태10/28/200512930IE Script 에서 ADO.Stream 개체를 사용 허가 유무를 지정.
131정성태10/27/200512331ASP.NET Spiced: AJAX
130정성태10/26/200513898RSA In JavaScript [1]파일 다운로드1
128정성태10/25/200512480Connecting to MS SQL Server from Unix파일 다운로드1
129정성태10/25/200512312    답변글 [추가]: SQL Server 2005 JDBC Driver Beta 2 Now Available
173정성태1/20/200612127        답변글 정식 릴리스: Microsoft SQL Server 2005 JDBC Driver
127정성태10/21/20051255264-bit Windows ; 언제, 그리고 왜 써야 할까?
126정성태10/19/200512979WSE(Web Services Enhancements) 3.0의 새로운 기능
125정성태10/14/200512972Cluster 가능한 StateServer 세션 관리자
124정성태10/14/200512964MapPoint Web Service SDK Version 4.0 for Visual Studio .NET 2003
123정성태10/14/200512708alpha release of the Python programming language for the .NET platform
161정성태1/3/200612662    답변글 [추가]: Beta release
184정성태8/12/200613224    답변글 Beta3 까지. ^^
190정성태3/10/200612549    답변글 Beta 4
221정성태3/31/200612827    답변글 Beta 5
246정성태4/21/200612718    답변글 Beta 6
295정성태5/24/200611695    답변글 Beta 7
122정성태10/13/200512484Determine whether service packs are installed on the .NET Framework
121정성태10/12/200511992.NET Reference Guide - 웹
120정성태11/14/200512624VS.NET Automation 과 VSIP
119정성태10/9/200512132Internet Information Services (IIS) 6.0 Resource Kit Tools (English)
... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...