Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 74. VS.NET - 매크로 함수 내에서 클립보드 API 사용 [링크 복사], [링크+제목 복사],
조회: 13007
글쓴 사람
정성태 (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]


비밀번호

댓글 작성자
 




... 46  [47] 
NoWriterDateCnt.TitleFile(s)
18정성태9/19/200411822HTML SELECT 요소에 OPTION 요소를 채우는 C/C++ 예제파일 다운로드1
17정성태11/14/200510595[정보] Visual Studio 6.0 Samples
16정성태9/5/200411744JAVA 로 구현된 NTLM 구현파일 다운로드1
15정성태9/2/200410407Developing Active Server Components with ATL
14정성태7/20/200410726No-Touch Deployment
13정성태6/30/200410803How to read BLOB from Dataset into buffer?
11정성태2/14/200410697XMLHTTP 에서 반환받은 non-XML 데이터를 보여주는 모듈
10정성태2/14/200413662MSIL 디컴파일러 - .NET Reflector [1]
9정성태1/26/200412028스크립트 디코더파일 다운로드1
159정성태12/23/20059689    답변글 [업데이트]: 스크립트 디코더파일 다운로드1
8정성태1/26/200414605게시물 도배 프로그램 방지
7정성태1/26/200413094Microsoft.XMLHTTP 개체로 XML 이 아닌 다른 데이터 가져오기
6정성태8/6/200311845Three Ways to Inject Your Code into Another Process파일 다운로드1
5정성태7/29/200311973SQL 서버 sa 암호를 잊은 경우, 복구하는 방법파일 다운로드1
4정성태7/25/200313534DiskId32 - 물리하드 디스크 정보파일 다운로드2
12정성태6/11/200410461    답변글 [추가] WMI 로 구하는 방법파일 다운로드1
3정성태7/25/200312110C# 프로그래밍 언어에 추후 추가되는 기능파일 다운로드1
2정성태7/25/200312395INFO: COM+ 1.0의 새로운 기능파일 다운로드1
... 46  [47]