IE 용 C#에서 도구 모음을 만들고있어 웹 사이트 내의 특정 프레임에 액세스해야합니다. 내 초기 테스트에서 프레임을 순환하고 프레임 이름이있는 MessageBox 팝업이 표시됩니다. 하지만 나는 "액세스가 거부되었습니다"라는 말을 할 때마다 예외가 발생합니다. 예외의 전체 텍스트는 다음과 같습니다.프레임 이름에 액세스하면 "액세스가 거부되었습니다"예외가 발생합니다.
액세스가 거부되었습니다. (HRESULT에서 예외 : 0x80070005입니다 (E_ACCESSDENIED))
이 여기에 코드입니다 : 웹 내 검색 수에서
IHTMLSelectionObject currentSelection = myHTMLDocument.selection;
IHTMLFramesCollection2 frames = (IHTMLFramesCollection2)myHTMLDocument.frames;
for (int i = 0; i < frames.length; i++)
{
object refIndex = i;
IHTMLWindow2 currentFrame = (IHTMLWindow2)frames.item(ref refIndex);
if (currentFrame != null)
{
MessageBox.Show(currentFrame.name);
}
else
MessageBox.Show("Null");
}
, 나는이 것을, 사실이 아니라 버그를 발견했다. 그렇게 행동 할 것으로 예상됩니다. 내 질문은 : 내가하려는 일을하는 올바른 방법은 무엇입니까?
미리 감사드립니다.
System.Runtime.InteropServices
사용하십시오 : http://support.microsoft.com/kb/196340를하지만 C#에서 더 완전한 예제가 있는지 모르겠어요. – Josicoco