ASCOM 망원경 드라이버를 쓰고 있는데 명령을 범위로 보내서 클라이언트 응용 프로그램 이 제대로 연결이 끊어 지거나 충돌이 발생해도 범위가 이동하지 않도록해야합니다. . C# finalizers에서 코드 실행 보장
나는 그것이 SendSerialPortCommand() 메소드로 만드는이~Telescope()
{
Common.AbortSlew();
Common.SetTracking(false);
}
같이 보입니다하고 실제로 와이어에 바이트를 발송하지 않고 종료하고 이전에 바로 종료 보인다 종료자를 추가하는 시도 lock 문.
의 repo는 여기에서 볼 수 있습니다
http://code.google.com/p/ascom-nexstar-telescope/source/browse/NexStar/
종료자를 호출 방법
는 이러한 목표를 달성하기 위해 더 이상 신뢰할 수있는 방법이 정적 클래스에서 흔히 driver.cs에?
이 문제의 근본 원인은이 문제의 근본 원인은 드라이버를 사용하는 응용 프로그램이 관리되지 않는 C++이고 드라이버가 C#에서만 관리되므로 ~ Telescope()가 호출되고 I Connected 속성을 false로 설정하여 관리되지 않는 C++ 응용 프로그램이 드라이버에서 제대로 연결을 끊도록 할 수있는 권한이 없습니다. – user964078