성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] Working with Rust Libraries from C#...
[정성태] Detecting blocking calls using asyn...
[정성태] 아쉽게도, 커뮤니티는 아니고 개인 블로그입니다. ^^
[정성태] 질문이 잘 이해가 안 됩니다. 우선, 해당 소스코드에서 ILis...
[양승조
] var대신 dinamic으로 선언해서 해결은 했습니다. 맞는 해...
[양승조
] 또 막혔습니다. ㅠㅠ var list = props[i].Ge...
[양승조
] 아. 감사합니다. 어제는 안됐던것 같은데....정신을 차려야겠네...
[정성태] "props[i].GetValue(props[i])" 코드에서 ...
[정성태] 저렇게 조각 코드 말고, 실제로 재현이 되는 예제 프로젝트를 압...
[정성태] Modules 창(Ctrl+Shift+U)을 띄워서, 해당 Op...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
닷넷
.NET 3.0
.NET 3.5
.NET 4.0
VC++
개발 환경 구성
제품 소개
VS.NET IDE
Vista
Windows 7
Windows 8
Windows 서버
Team Foundation Server
IIS
디버깅 기술
Win32
64비트
오피스
웹
기타
Phone
부모글 보이기/감추기
내용
<span> <br /> <div class='mainCenterTitle'>VS.NET - 매크로 함수 내에서 클립보드 API 사용</div><br /> <br /> VS.NET에서 제공되는 매크로 함수에서 클립보드를 접근하기 위해서는 .NET BCL에서 제공되는 클립보드 관련 클래스를 이용해서 다음과 같이 사용할 수 있습니다.<br /> <br /> <pre class='code'> Sub InternalSetClipboardData() <b>Clipboard.SetText</b>("클립보드 예제") End Sub </pre> <br /> 해보신 분들은 아시겠지만. ^^ 대개 다음과 같은 식의 오류 화면이 뜨고 맙니다.<br /> <br /> <img alt='when_macro_execute_clipboard_api_1.png' src='/SysWebRes/bbs/when_macro_execute_clipboard_api_1.png' /><br /> <br /> 말 그대로입니다. OLE 관련 호출은 "MTA"가 아닌 "STA"로 초기화된 스레드에서 실행되어져야 하기 때문에 이와 같은 문제가 발생하는 것입니다.<br /> <br /> 해결책은... ^^ 다음의 토픽에서 제공되는 코드를 활용하시면 됩니다.<br /> <br /> <pre class='code'> Copying Visual Studio code snippets to the clipboard as HTML ; <a target='_tab' href='http://www.codinghorror.com/blog/archives/000429.html'>http://www.codinghorror.com/blog/archives/000429.html</a> </pre> <br /> 어떻게 하는지 간략하게 코드를 실어보겠습니다.<br /> <br /> <pre class='code'> Sub CopyToClipboard() Dim thread As New Threading.Thread(AddressOf InternalSetClipboardData) <b>thread.ApartmentState = Threading.ApartmentState.STA</b> thread.Start() thread.Join() End Sub Sub InternalSetClipboardData() <b>Clipboard.SetText</b>("클립보드 예제") End Sub </pre> <br /> <br /> <br /><br /><hr /><span style='color: Maroon'>[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </span>
첨부파일
스팸 방지용 인증 번호
1604
(왼쪽의 숫자를 입력해야 합니다.)