Ошибка Javascript «Объект не поддерживает это свойство или метод» отображается в режиме ОТЛАДКИ

#c# #javascript #.net #debugging #activexobject

#c# #javascript #.net #отладка #activexobject

Вопрос:

У меня есть приложение C # .NET для Windows, которое будет получать HTML-файлы и использовать их для отображения данных. В HTML-файлах будет javascript для облегчения анализа / отображения данных, и один из них использует ActiveXObject для отображения файлов PDF.

Когда я устанавливаю двоичную версию приложения Windows, файл PDF отображается правильно и работает нормально. Когда я запускаюсь из режима отладки с VS2008, я получаю сообщение об ошибке:

Не удалось загрузить страницу сведений. В скрипте произошло исключение. Имя ошибки: TypeError. Сообщение об ошибке: Объект не поддерживает это свойство или метод

Они оба ссылаются на одну и ту же HTML-страницу, разница лишь в том, что одна из них является бинарной установкой, а другая — просто запущенной моей отладочной сборкой.

Мне нужно заставить его работать в режиме отладки, чтобы я мог протестировать, но я не уверен, что не так; Любые предложения определенно будут оценены!

Редактировать: Извините, вот HTML-код:

 <html xmlns="http://www.w3.org/1999/xhtml">
<head>      
<title>Received Fax Preview Page</title>    
</head>     
<body>  
<object data="myfile.pdf" type="application/pdf" width="800" height="600">SUP</object>  
</body>
</html>
  

И я просто использую веб-браузер C # для ее отображения.

  _webBrowser.DocumentText = htmlDoc;
  

Комментарии:

1. Можете ли вы предоставить немного больше информации, такой как используемый вами PDF activex и код, инициализирующий объект?

2. Откуда осуществляется доступ к файлу pdf (т. Е. Где он хранится)? (О, и я предполагаю, что мы смотрим на элемент управления winforms WebBrowser, учитывая тот факт, что вы используете свойство DocumentText?)

3. Доступ к PDF-файлу осуществлялся с веб-сервера, и да, это был элемент управления winforms WebBrowser.

Ответ №1:

Наконец-то это заработало, переключившись на платформу x86 в VS (с любого процессора) и создав проект. Я предполагаю, что, поскольку моя машина x64, в режиме отладки приложение нацелено на все компоненты x64, а IE x64 не может загружать PDF-файлы, но, возможно, в двоичном коде (который равен x64) для открытия PDF-файла используется общий бит IE x86?

Не уверен на 100% в объяснении, но сейчас оно работает.