0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
1 | |
Не запускается приложение, использующее QuickOPC10.11.2014, 11:16. Показов 2298. Ответов 11
Метки нет (Все метки)
Приложение написано в среде Visual Studio 2013. В программе используется библиотеки QuickOPC. Проблема заключается в том, что не запускается .exe файл на клиентских компьютерах(без Visual Studio). Все библиотеки, добавленные в проект(в References) лежат в папке с .exe файлом. На рабочей машине все работает. На обеих машинах стоит Windows 7 SP1 32bit, Framework 4.5 В чем может быть проблема?
Добавлено через 17 минут Пробовал запускать на чистой системе без предустановленного пакета QuickOPC с библиотеками, но с Visual Studio. Все запускалось, значит проблема не в них.
0
|
10.11.2014, 11:16 | |
Ответы с готовыми решениями:
11
Приложение, использующее ado-компоненты, не запускается Приложение использующее СУБД Oracle Кроссплатформенное приложение, использующее SQLite Приложение, использующее SkinSoft, не работает |
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
10.11.2014, 11:57 | 2 |
Какую ошибку выдает?
0
|
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
10.11.2014, 14:00 [ТС] | 3 |
Появляется сообщение "Прекращена работа программы".
0
|
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
10.11.2014, 15:09 | 4 |
А в журнале Windows что записывается?
0
|
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
10.11.2014, 17:43 [ТС] | 5 |
Прошу прощения, а где его посмотреть можно?
0
|
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
11.11.2014, 08:26 | 6 |
http://support.microsoft.com/kb/308427/ru-ru
http://www.oszone.net/10680 http://www.oszone.net/figs/u/7... ent-02.jpg Посмотрите Журналы Windows - Приложение, что в него записывается в тот момент, когда программа прекращает работу.
0
|
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
12.11.2014, 11:07 [ТС] | 7 |
В журнале две ошибки:
1)Имя журнала: Application Источник: .NET Runtime Дата: 12.11.2014 11:02:58 Код события: 1026 Категория задачи:Отсутствует Уровень: Ошибка Ключевые слова:Классический Пользователь: Н/Д Компьютер: User-ПК Описание: Приложение: vibro.exe Версия платформы: v4.0.30319 Описание. Процесс был завершен из-за необработанного исключения. Сведения об исключении: System.TypeInitializationException Стек: в OpcLabs.EasyOpc.DataAccess.EasyDAClient..ctor(System.ComponentModel.IContainer) в vibro.UCTest.InitializeComponent() в vibro.UCTest..ctor(System.String) в vibro.FormMain.InitForms() в vibro.FormMain..ctor() в vibro.Program.Main() 2)Имя журнала: Application Источник: Application Error Дата: 12.11.2014 11:02:58 Код события: 1000 Категория задачи100) Уровень: Ошибка Ключевые слова:Классический Пользователь: Н/Д Компьютер: User-ПК Описание: Имя сбойного приложения: vibro.exe, версия: 1.0.0.0, отметка времени: 0x5451f4d1 Имя сбойного модуля: KERNELBASE.dll, версия: 6.1.7600.16385, отметка времени 0x4a5bdaae Код исключения: 0xe0434352 Смещение ошибки: 0x00009617 Идентификатор сбойного процесса: 0xf90 Время запуска сбойного приложения: 0x01cffe4f118017c9 Путь сбойного приложения: D:\Сборка\bin-6\vibro - 20141029\project\bin\Debug\vibro.exe Путь сбойного модуля: C:\Windows\system32\KERNELBASE.dll Код отчета: 50663045-6a42-11e4-8c7f-0800279c00cc
0
|
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
12.11.2014, 12:31 | 8 |
Вот, теперь вы можете проанализировать причину, главное место из-за чего программа падает - это
Код
Стек: в OpcLabs.EasyOpc.DataAccess.EasyDAClient..ctor(System.ComponentModel.IContainer) в vibro.UCTest.InitializeComponent() в vibro.UCTest..ctor(System.String) в vibro.FormMain.InitForms() в vibro.FormMain..ctor() в vibro.Program.Main() Пока навскидку варианты, из-за чего такое происходит: - на компьютере нет сборки, обращение к которой происходит в этом конструкторе; - используется неуправляемый код, в таком случае скомпилируйте вашу сборку exe с platform target x86 (Project Properties - Build).
0
|
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
12.11.2014, 15:41 [ТС] | 9 |
Ссылка на проект: https://www.dropbox.com/s/r5qt... 0.rar?dl=0
Был бы очень признателен, если бы посмотрели. Добавлено через 1 час 11 минут Проблема сдвинулась с места. Убрал из Initaialize Components() одного UserControl объявления компонентов OPC, которые у меня были просто перекинуты на форму в Visual Studio. Это не повлияло на работу приложения при отладке в Visual Studio. Но зато .exe стал запускаться на клиентской машине. Но есть проблема, он выдает ошибку при работе, когда должен отрабатываться тот самый OpcLabs.EasyOpc.DataAccess.EasyDAClient но в другом месте. Добавлено через 13 минут Текст ошибки: System.TypeInitializationException: Инициализатор типа "OpcLabs.EasyOpc.DataAccess.EasyDAClient" выдал исключение. ---> System.IO.FileNotFoundException: Невозможно загрузить файл или сборку "x86_OpcLabs.EasyOpcClassicRaw_5.30.1114.1.dll" или один из зависимых от них компонентов. Не найден указанный модуль. Добавлено через 1 минуту в References в проекте нет такой библиотеки: "x86_OpcLabs.EasyOpcClassicRaw_5.30.1114.1.dll" Добавлено через 29 минут --- Конец трассировки внутреннего стека исключений --- в OpcLabs.EasyOpc.DataAccess.EasyDAClient..ctor() в vibro.SuperDriver..ctor(TimeSpan time_request, String[] channels) в d:\Projects\vibro\vibro - 20141110\project\SuperDriver.cs:строка 80 в vibro.UCTest.StartThread() в d:\Projects\vibro\vibro - 20141110\project\UCTest.cs:строка 393 в vibro.UCTest.button1_Click(Object sender, EventArgs e) в d:\Projects\vibro\vibro - 20141110\project\UCTest.cs:строка 415
0
|
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
12.11.2014, 22:15 | 10 |
Насколько я вижу, должна быть еще как минимум сборка с классом OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient, которая имеет полное имя "OpcLabs.EasyOpcClassicRaw, Version=5.30.1114.1, Culture=neutral, PublicKeyToken=6faddca41dacb409". Эта сборка грузится либо из GAC, либо из ресурсов какой-то другой сборки.
Как вариант - эта сборка устанавливается инсталлятором OpcLabs в GAC. Попробуйте распространять со своей программой установщик, либо устанавливайте эту сборку в GAC самостоятельно. Update: Эта сборка находится в ресурсах OpcLabs.EasyOpcClassic.dll, по какой-то причине она не загружается из ресурсов, попробуйте вариант, который я предложил выше.
0
|
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 7
|
|
13.11.2014, 15:44 [ТС] | 11 |
Скомпилил под x86, ничего не изменилось. Как сборку достать, подскажите, пожалуйста.
0
|
140 / 137 / 22
Регистрация: 16.02.2012
Сообщений: 453
|
|
13.11.2014, 22:10 | 12 |
Reflector, ILSpy.
1
|
13.11.2014, 22:10 | |
13.11.2014, 22:10 | |
Помогаю со студенческими работами здесь
12
Разработать приложение, использующее заданные компоненты Сетевое приложение, использующее GSM-модемы Как запустить приложение использующее curses.h Приложение, использующее строковые типы данных Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |