2
64 비트 시스템으로 전환하고 Visual Studio 2012를 사용할 때까지 이전 Bloomberg Data Type Libary (blpdatax.dll)를 C#에서 사용했습니다. 이제 모든 시도 BlpData 인터페이스에서 메서드를 호출하면 액세스 위반이 발생합니다.C#의 Bloomberg 데이터 유형 라이브러리
추가 정보 :
내 대상 시스템 유형이 x86입니다.
Bloomberg 데이터 유형 라이브러리를 사용하는 Perl 스크립트는 계속 정상적으로 작동합니다.
타사 32 비트 COM 개체에 대한 참조를 사용하는 다른 C# 프로그램도 정상적으로 작동합니다.
다음은 코드입니다. 예외는 구독 호출에서 발생하며 Win32 예외 (액세스 위반)로 설명됩니다.
void Test()
{
BlpData blp = new BlpData();
blp.ActivateRealtime = false;
object res;
object symbols = "ADX US Equity";
object fields = "PX_LAST";
object start = new DateTime(2013, 1, 1);
object end = new DateTime(2013, 1, 31);
int cookie = 0;
blp.Subscribe(symbols, cookie, fields, Type.Missing, Type.Missing, out res, Type.Missing);
object[,] result = (object[,])res;
Console.WriteLine(result[0,0].ToString());
}
나는 장기적인 솔루션은 새로운 블룸버그 API를 사용하는 것입니다 알고 있지만, 그 순간에 나는 그 선택의 여지가 없어. 어떤 도움을 주시면 감사하겠습니다.