Адресат вызова создал исключение visual studio
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
dorosa, с дистрибутивом все отлично только что сегодня на работе все проверял и интегрировал! без каких либо ошибок !
а структура папок как в учебнике по автоустановке
Конфигурация компьютера | |
Процессор: Intel Core 2 Duo CPU E8400 | |
Материнская плата: ASUS P5Q Pro | |
Память: Kingston ValueRAM PC2-6400 CL5, 4 Гб | |
HDD: 2xWD Caviar Black 1 Тб SATA2 RAID0 | |
Видеокарта: Sapphire Toxic HD 4850 512Mb | |
Звук: int. HD-Audio codec (Realtek ALC1200) | |
Блок питания: Antec NeoPower 500 Вт, 2009 г. | |
CD/DVD: Oprtiarc DVD RW AD-7173S | |
Монитор: IIYAMA E2607WS 26" | |
ОС: Windows 8 64 bit | |
Индекс производительности Windows: 5.9 | |
Прочее: Antec P183, AVerMedia SUPER 009 |
При открытии образа выбираю не install.wim, а файл каталог:
Если проблемы с открытием install.wim - делаю это в виртуальной машине с чистой системой (хотя не совсем чистой - WAIK установлен).
-------
Omnia mutantur, nos et mutamur in illis (лат.), все меняется, и мы меняемся
Несмотря на давность темы, оказался здесь в попытках найти решение аналогичной проблемы "Не удалось создать каталог. С помощью этой 64-разрядной версии диспетчера установки Windows можно создавать только каталоги для 64-разрядных образов Windows." Проблема заключалась в появлении этой ошибки на 64-битной системе при работе с образом, также, 64-битной системы.
Решение Работу с WAIK или как сейчас этот инструментарий называется, WADK необходимо выполнять в системе, не ниже той, с образом которой вы работаете. Моя проблема заключалась в попытке поработать с образом Win 8.1x64 под Win7sp1x64. Как только перешел на Win10? файл каталога без проблем создался.
Есть программа которая была подвержена шифрованию в данном куске кода она расшифровывается и должна запустится без временного файла, но выбивает исключение:
Необработанное исключение типа "System.Reflection.TargetInvocationException" в mscorlib.dll
Дополнительные сведения: Адресат вызова создал исключение.
Прикреплённый файл CryptFile.rar (55,28 Кбайт, скачиваний: 134)
У тебя проблема в CreateInstance. Проблема в том, что в нее нужно передавать имя типа из которого ты собрался вызывать метод.
В твоем случае у тебя имя типа CryptFile.Program, и класс является статическим, и оно попросту не может во первых без конструктора создать инстанс твоего класса, т.к. сам класс статический, во вторых ты передаешь имя метода в CreateInstance, вместо имени типа.
Вот я немного переделал твой код:
И добавил сам этот метод в твоем классе CryptFile.Form1:
После чего зашифровал CryptFile.exe и потом его расшифровал - все прошло без ошибок. Т.е. проблема в том, что у тебя класс статический. И передаешь ты не то что нужно в CreateInstance - туда нужно передавать имя типа, из которого ты хочешь вызвать метод, а ты туда передаешь имя метода. Ладно смотри у меня есть файл .exe я не знаю на чём он написан , так что я не могу знать что мне вызывать из него мне надо каким то образом получить класс и метод потом передать в эти параметры. Так что тобою приведёный метод не действителен пока я не знаю класса и метода программы которую хочу пропустить через мою программу. А из твоего примера мне нужно метод каким то образ вшить в файл и ещё узнать класс. И мне надо шифровать не CryptFile.exe ,а любой .exe Ладно смотри у меня есть файл .exe я не знаю на чём он написан , так что я не могу знать что мне вызывать из него мне надо каким то образом получить класс и метод потом передать в эти параметры. Так что тобою приведёный метод не действителен пока я не знаю класса и метода программы которую хочу пропустить через мою программу.
Ну так подожди - если ты не знаешь что ты хочешь создать и что ты хочешь вызвать - то какие ко мне притензии? Накладывай ограничения, и делай для вызываемых типов - обязательное требование, например наличие какого либо метода, скажем там "public void Instance()", а затем вызываей его. Все типы хранятся в Assembly.GetTypes() - Оно вернет тебе все типы, которые есть в загруженой сборки, а уж дальше дело техники - я не силен еще в шарпе, может там както можно проще проверить наличие определенного метода, но на крайняк - можно просто для каждого типа вызывать это код - и ловить исключение, если исключение, то берем следующий тип. Но это както корявенько конечно, может спецы подтянутся подскажут как проще делать. Но сдается мне - так как ты хочешь, через статический класс, врятли получится. Я пробовал ему передать тип Program, оно требует наличие конструктора, а в статических классах как я понимаю - констуктора быть не может.
Добавлено 08.01.15, 10:48
Ну ок, а зачем тебе нужно вызывать какие то методы? Расшифровывай на здоровье и пиши в файл. Какие проблемы?
Добавлено 08.01.15, 10:50
Почему не сделать проще - дешифруешь файл, записываешь на диск - и выполняешь.
Добавлено 08.01.15, 10:55
У тебя как раз через точку входа и выполнится программа, а вызывать в коде Main, ну незнаю зачем. Сдается мне ты или запустить после дешивровких хочешь или что?
Добавлено 08.01.15, 10:58
Хотя кажется кое что нашел, щас попробую, может получится с Main.
Как создать соединение и авторизоваться
Для авторизации и последующих вызовов методов сервера Диадок необходимо создать объект DiadocConnection, который представляет собой соединение с сервером. Соединение следует создавать на каждый сеанс работы. Явно освобождать ресурсы после окончания работы с этим объектом не нужно.
При создании объекта DiadocConnection необходимо указать отпечаток сертификата для авторизации на сервере. Отпечаток сертификата можно узнать, получив список и описание всех доступных сертификатов методом GetPersonalCertificates.
Устанавливалась при помощи самописного батника, из папки с DLL-кой:
C:\WINDOWS\system32\regsvr32.exe %
Сом объект к проекту подключен через References.
Строка кода с ошибкой:
var diadocCom = new DiadocComApiLib.DiadocConnection();
The text was updated successfully, but these errors were encountered:
pavenkostanislav commented Jul 26, 2017
Приложение самописное. Система Windows 10 64
pavenkostanislav commented Jul 26, 2017
Пробовал и с 32 битной DLL одинаковый результат
pavenkostanislav commented Jul 26, 2017
Само приложение WEB-сайт Platform target "Any CPU"
azhipaigor commented Jul 26, 2017
Разрядность кода получившегося в результате выполнения приложения не соответствует разрядности компоненты. Можно поставить одновременно x86 и x64 компоненты, тогда все должно быть ок.
pavenkostanislav commented Jul 26, 2017
Уточните в какие папки %systemroot% для Windows 10 я должен установить какие DLL?
pavenkostanislav commented Jul 26, 2017
Пытаясь перебрать все варианты ставлю так:
pavenkostanislav commented Jul 26, 2017
azhipaigor commented Jul 27, 2017
Перед установкой лучше все удалить:
%systemroot%\System32\SysWoW64\regsvr32.exe /u DiadocComApi.dll
%systemroot%\System32\regsvr32.exe /u DiadocComApi1.dll
А потом:
%systemroot%\System32\SysWoW64\regsvr32.exe DiadocComApi.dll
%systemroot%\System32\regsvr32.exe DiadocComApi1.dll
Все под админской учеткой.
Результат выполнения батника:
C:\WINDOWS\system32>C:\WINDOWS\System32\SysWoW64\regsvr32.exe /u C:\Users\s.pavenko\Desktop\DiadocComApi\DiadocComApi.dll
Системе не удается найти указанный путь.C:\WINDOWS\system32>C:\WINDOWS\System32\regsvr32.exe /u C:\Users\s.pavenko\Desktop\DiadocComApi\DiadocComApi1.dll
C:\WINDOWS\system32>C:\WINDOWS\System32\SysWoW64\regsvr32.exe C:\Users\s.pavenko\Desktop\DiadocComApi\DiadocComApi.dll
Системе не удается найти указанный путь.C:\WINDOWS\system32>C:\WINDOWS\System32\regsvr32.exe C:\Users\s.pavenko\Desktop\DiadocComApi\DiadocComApi1.dll
Но если написать строчку
var diadocCom = new DiadocComApiLib.DiadocCom();
Она компилится.
Може именно с коннекшеном проблема?
var diadocCom = new DiadocComApiLib.DiadocConnection();
При этом
Для авторизации и последующих вызовов методов сервера Диадок необходимо создать объект DiadocConnection, который представляет собой соединение с сервером.
В нём Certificates заполнены, но как получить список?
перебирая каждый?
Certificates.GetItem(индекс)
azhipaigor commented Jul 27, 2017
Да, теперь вижу, действительно проблема с DiadocConnection, этот объект можно получить от объекта DiadocCom методами CreateConnectionByCertificate и CreateConnectionByLogin.
К элементам ValueCollection можно обратится только по индексу, с помощью GetItem(index).
pavenkostanislav commented Jul 27, 2017
Если можно пришлите пожалуйста структуру Certificates.GetItem(индекс)
Какие там есть поля?
azhipaigor commented Jul 27, 2017
Описание возвращаемого значения можно найти в документации к методу GetPersonalCertificates - коллекция содержит объекты PersonalCertificate.
pavenkostanislav commented Jul 27, 2017
IsQualifiedElectronicSignature (дата, чтение) - признак того, что сертификат является квалифицированным
IsQualifiedElectronicSignature - булевое поле
На клиенте скрипт отработал:
Класс пришлось самому писать. Пока ответа как воспользоваться готовым описанием не получил
на клиенте из Visual Studio 2015 и установленной dll работает,
После публикации на сервер другой ПК при открытии страницы с тойже клиенской машины ошибка:
Возможно Вы сможете поделиться опытом как у Вас на сервере работает аутентификация по сертификату? На какие машины Вы ставите dll
Доброе время суток, Нет ли по данному вопросу новой информации?
Очень помогло бы разобрать как Вы авторизируетесь по установленному на ПК сертификату.
Для работы на вашем сервере я используею DiadocComApi.dll. Возможно я смогу с Вами разобрать установку самой Dll,
Самой DLL в разделе: Администрировани\Службы компонентов\Компьютеры\Мой компьютер\Настройка DCOM\ я не вижу.
Когда я запускаю Visual Studio 2010, я часто получаю ошибку 'exception has been thrown by a target of invocation' , которая мешает мне открыть Visual Studio. Перезагрузка моего компьютера заставляет ошибку исчезнуть, но через несколько дней она возвращается.
Что вызывает эту ошибку и как от нее избавиться?
Я нашел много вопросов по SO, которые упоминают эту ошибку при запуске своего кода в Visual Studio, но ни одного при открытии Visual Studio.
У меня есть работа SQL, созданная на SQL Server Agent с системой Type:Operating (CmdExec). У меня есть следующая ошибка в сгенерированном файле журнала. Источник: ST_CheckSrcFile Описание: исключение было вызвано целью вызова. И это выполняется правильно, когда командная строка выполняется в.
Похоже, проблема заключалась в том, что мой системный путь стал слишком длинным для обработки Windows: он был длиной 2087 символов (подсказка к этой статье ).
Сегодня у меня была эта проблема с Visual Studio 2012. Что-то, казалось, пошло не так во время первой установки, поэтому это помогло удалить эти записи реестра:
Visual Studio затем снова настроится, когда вы его запустите. Вы также можете просто переименовать его.
У меня была та же проблема с Visual Studio 2012 и SQL Server Management Studio, решение заключалось в уменьшении переменной длины СИСТЕМНОГО пути .
Симптомы: После запуска одного экземпляра Visual Studio 2012 любая другая попытка запустить другой или один из SQL Server Management Studio завершится неудачей. Перезагрузка компьютера позволила бы мне снова запустить один экземпляр VS2012. Восстановление установки VS2012 не помогло.
Мой путь также, по-видимому, повлиял на доступ к расширенным системным настройкам из Control Panel\system\Advanced system Settings, поэтому я не смог отредактировать путь.
Пришлось запустить это с windows\system32, чтобы отобразить диалоговое окно расширенных системных настроек, а затем отредактировать переменные среды оттуда.
Недавняя установка стека MEAN добавила инструкцию пути для моей учетной записи пользователя. Я полностью удалил этот параметр, а затем VS2010 и диалоговое окно расширенных системных настроек запустились без проблем.
ответ BioGeek исправил мою проблему. В моем случае переполнение системного пути не только нарушает visual studio, но и нарушает GUI, чтобы изменить сам системный путь.
Я получил ошибку: Панель управления > Система > Дополнительные настройки системы.
Обходной путь выполняется c:\windows\system32\SystemPropertiesAdvanced.exe.
У меня была аналогичная проблема при попытке запустить "Task Runner Explorer" в VS2015 , я получил ошибку: "Исключение было вызвано целью вызова n".
Я решил эту проблему, переустановив только патч "Microsoft ASP.NET и веб-инструменты" (DotNetCore.1.0.0-VS2015Tools.Preview2.exe) по этой ссылке.
После загрузки и установки Visual Studio 2012 я не могу запустить его и продолжаю получать ошибку - исключение было вызвано целью вызова. Я даже не могу попасть в приложение. VS2012 просто не может запуститься. Есть ли вообще выход? Я разместил этот вопрос на форуме Microsoft. Но ответы не очень.
Я получил эту ошибку, когда установил SQL Server Express 2014 на машине, на которой уже был 2012 год. Я установил его с помощью инструментов, которые, по-видимому, сломали SSMS 2012. В частности, при попытке "Edit top 200 rows" была выдана ошибка.
Использование SSMS 2014, похоже, работает нормально.
Чтобы добавить к ответу BioGeek. Вам не обязательно избавляться от записей в вашем пути, вы можете обойти ограничение символов, введя больше переменных.
Вы бы добавили переменную EXTENDEDPATH, например:
И, наконец, вы ссылаетесь на эту переменную в своем PATH
Я бы рекомендовал оставить по крайней мере 100-200 символов передышки на вашем пути, чтобы вам не приходилось нянчиться с переменной окружения PATH каждый раз, когда вы что-то устанавливаете.
Переменная системного пути слишком длинная. Скопируйте текущее содержимое в блокнот, удалите повторяющиеся записи и нежелательные записи и скопируйте обратно в переменную path.
В моем случае эта ошибка была вызвана неверным ключом в файле web.config. Попробуйте отменить последние изменения, внесенные в файл.
у меня была та же проблема, но я понял, что "connectionStrings" должно быть под "configSections" в web.config
Эта проблема возникает из-за длинного пути в переменной среды windows поддерживает только 2048 символов. Для того, чтобы решить эту проблему, вам необходимо удалить несколько переменных среды из вашей системы из PATH.
Похожие вопросы:
Недавно я создал пару VSPackages для некоторых расширений Visual Studio (меню bar/command). я скомпилировал их правильно вчера, проверил в TFS (я единственный, кто касается этого проекта, FYI). Я.
У меня есть работа SQL, созданная на SQL Server Agent с системой Type:Operating (CmdExec). У меня есть следующая ошибка в сгенерированном файле журнала. Источник: ST_CheckSrcFile Описание.
После загрузки и установки Visual Studio 2012 я не могу запустить его и продолжаю получать ошибку - исключение было вызвано целью вызова. Я даже не могу попасть в приложение. VS2012 просто не может.
Когда я запускаю nuget restore из командной строки, я получаю Ошибка синтаксического анализа файла решения в MyProject.sln: исключение было вызвано целью вызова. но восстановление пакетов nuget из.
Я использую задачу скрипта SSIS, но всякий раз, когда я ее запускаю, пакет SSIS терпит неудачу и выдает следующую ошибку: исключение было вызвано целью вызова. Возможно ли, что он дает эту проблему.
Читайте также: