Я сделал программу WPF/C#, и я использую интернет-управление для WYSIWYG редактирование HTML.
это - обычная Исполняемая программа.
это работает над большинством компьютеров однако, некоторые компьютеры дают мне следующую ошибку.
Не мог загрузить файл или блок 'Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' или одна из его зависимостей. Проверка строгого имени перестала работать.
Файл 'Microsoft.mshtml.dll' распределяется с программой. Это со всеми другими необходимыми dlls в той же папке как EXE-файл.
Вот вывод от Fuslogvw
*** Assembly Binder Log Entry (1/14/2010 @ 6:36:51 PM) ***
The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.
Assembly manager loaded from: c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
Running under executable C:\Documents and Settings\office\Desktop\Database\DATABASE.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = CAMPUSREMOTE\office
LOG: DisplayName = Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
(Fully-specified)
LOG: Appbase = file:///C:/Documents and Settings/office/Desktop/Database/
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = DATABASE.exe
Calling assembly : ChabadOnCampusMainFrontEnd, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
===
LOG: Start binding of native image Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.
WRN: No matching native image found.
Спасибо
Убедитесь, что файл 'Microsoft.mshtml.dll', распространяемый вместе с программой, является файлом PIA, а не файлом Office. Некоторые сайты утверждают, что файлы Office "подписаны с задержкой", а файл PIA (установленный вместе с установкой VS) является подписанной копией. На моем компьютере у меня есть 3 разные версии файла 'Microsoft.mshtml.dll', (одинаковый размер файла, но разное содержание):
"c:\Program Files\Microsoft Visual Studio 9. 0\Visual Studio Tools for Office\PIA\Office11\Microsoft.mshtml.dll"
"c:\Program Files\Microsoft Visual Studio 9.0\Visual Studio Tools for Office\PIA\Office12\Microsoft. mshtml.dll"
"c:\Program Files\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll"
Удалите ссылку "Microsoft.mshtml.dll" из проекта. Используйте "Add Reference", вкладку ".Net", выберите файл PIA, используйте опцию "copy loacal". (Это сработало для меня . . .)
Atara
Я никогда не делал этого без использования этого метода в базовом классе. Я думаю, что добавление «using CLASS:: METHOD» в производный класс даст вам доступ к другой версии перегруженного метода.
class CParent
{
public:
void doIt(int x);
};
class CChild : public CParent
{
public:
void doIt(int x,int y,int z);
using CParent::doIt;
};
-121--2449759- Вы поймали неправильное исключение.
-121--3456779-Первый шаг для отслеживания этой проблемы - определить, действительно ли это Mcirosoft.mshtml.dll или одна из его зависимостей. Лучший способ сделать это - использовать fuslogvw для отслеживания сбоя загрузки сборки. В нем будет представлена подробная информация о сбое сборки.
Как только вы определите, какая сборка не работает, пожалуйста, отправьте обратно с результатами.
EDIT
Это предупреждающее сообщение указывает на успешное выполнение операции. Похоже, в нем нет ошибки.