Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Использование IDataAccessPtr класса, для связи с SQL server / 7 сообщений из 7, страница 1 из 1
24.09.2015, 15:29
    #39060444
dj_raven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
День добрый.
Есть программа написанная на Microsoft Visual Studio .NET 2003. Она исползует класс IDataAccessPtr.
Проблемма в том, что, когда, запускаеш эту программу на Windows XP, где она и скомпилированна, переменная типа IDataAccessPtr содержит NULL, в результате вылетает ошибка incorrect pointer. Если скомпилированный код копируеш на Windows 7, и запускаеш там, то соединение с SQL server устанавливается без проблемм. Судя по всему, не хватает какого-то package, который требуется этому классу, который есть на Windows 7, но нет на Win XP. Но мне не удаётся найти, какого именно.
Была, также, предпринята попытка посмотреть что нужно, под Dependency Walker. Он выдал что отсутвуют wer.dll и ieshims.dll. Насколко я знаю, они к етой проблемме отношения не имеют.
Программа была написана програмистом, который давно уже здесь не работает, и документации по prerequisites он не оставил. Так-что особых источников информации у меня нет. Гугл, при запросе по имени класса, выдаёт всего одну ссылку, которая не содержит необходимой информации.
Может кто-нибудь из вас в курсе, что, именно, требуется для нормальной работы этого класса?
Заранее благодарю.

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
24.09.2015, 16:04
    #39060486
dj_raven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
Может, хотя-бы, кто-нибудь знает в какой именно dllхранится реализация этого класса? Что нужно подключать к C++ проeкту под VS 2003?
...
Рейтинг: 0 / 0
24.09.2015, 16:14
    #39060503
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
dj_ravenЧто нужно подключать к C++ проeкту под VS 2003?

не тот форум.

Исходники то есть?
...
Рейтинг: 0 / 0
24.09.2015, 16:40
    #39060526
dj_raven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
Someclass.h:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
....

class Someclass: public parentclass
{
...
public:
    IDataAccessPtr m_pDal;
private:
...
}



Someclass.cpp
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
void Someclass::Init()
{
	try 
	{
		// Create DAL
                m_pDal.CreateInstance( IID_DataAccess );//Сюда он заходит сразу, смотрел во время дебага. после выполнения, значение NULL
	} 
	catch (_com_error& /*ce*/) 
	{
                 //some code to handle exceptions
	} 
	catch (std::exception& /*se*/)
	{
                 //some code to handle exceptions
	}

}

const OtherClass* Someclass::GetDirList()
{
	try 
        {
                //some code written here
		m_pDal->SetConnection( "database name", "SQL server IP" ); //после, несостоявшейся, инициализации в функции выше, он ломится сюда, где и вылетает со свистом.
                //some code written here

	} catch (_com_error& e) {
                //exception handler
		return NULL;

	} catch (...) {
                //exception handler
		return NULL;

	}


	return someData
}


Но, как я уже говорил, проблемма не в коде а в environment, под Win7 этот-же код, скомпилированный на Win XP работает без проблем
...
Рейтинг: 0 / 0
24.09.2015, 16:50
    #39060540
dj_raven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
Небольшое дополнение. В цпп файле в самом начале есть, еще, такое обявление
Код: plaintext
1.
const IID IID_DataAccess = __uuidof(DataAccess);
...
Рейтинг: 0 / 0
24.09.2015, 18:48
    #39060647
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
dj_ravenНебольшое дополнение. В цпп файле в самом начале есть, еще, такое обявление
Код: plaintext
1.
const IID IID_DataAccess = __uuidof(DataAccess);



Какой-то COM объект используется, и он видимо на 7 есть, а на ХП нету
Исследуйте, что за ком объект, по гуиду или какому-то имени
...
Рейтинг: 0 / 0
25.09.2015, 11:39
    #39061077
dj_raven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование IDataAccessPtr класса, для связи с SQL server
Спасибо всем за помощь, нашел в чем проблемма. Предыдущий разработчик не включил в пакет одну важную dll, на которой крутится вся связь с MS SQL Server (под Win 7 у меня второй пакет стоит, в который входит эта dll, а под XP нет)
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Использование IDataAccessPtr класса, для связи с SQL server / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]