2011-05-05 2 views
1
을 사용하는 동안 그대로 유지됩니다.

기본적으로 mappoint를 열고 코드를 가져 와서 경로를 계산하는 간단한 코드가 있습니다. Mappoint를 닫은 후에도 MapPoint.exe 프로세스가 시스템에 남아있는 것을 제외하고는 완벽하게 작동합니다.MapPoint.exe 프로세스는 응용 프로그램을 닫은 후 C#

이전 버전의 MapPoint에서는 이러한 문제가 발생하지 않았습니다.

답변

1

MapPoint를 닫은 후에 명시 적으로 변수를 NULL로 설정해야합니다. 그렇게하지 않으면 자동화 개체에 매달려있는 참조가 남아 있으며 MapPoint는 참조 계산이 그렇지 않다고 판단하더라도 무언가를 사용하고 있다고 생각합니다.

+0

글쎄, null로 설정할 수 있지만, 마포인트 자체가 닫힌 경우에만 그렇게해야합니다. 이벤트 같은 것이 있습니까? –

+0

아니요. 사용을 끝내고 나면 MapPoint 자체가 닫혀 있는지 여부에 관계없이 작업을 수행해야합니다. 참조 횟수 문제 - 자동화를 통해 MapPoint가 열릴 때마다 카운터가 증가합니다. 해당 카운터가 0으로 다시 감소 할 때까지 MapPoint가 닫히지 않습니다. 이벤트가 필요 없습니다. COM에 의해 자동화됩니다. Iow, MapPoint.Exit을 종료하면 나중에 변수를 NULL로 지정해야합니다. –

0

@ jm2.me : 폐쇄시 필요한 MapPoint 참조는 MapPoint.Application에 필요한 것입니다. 다른 모든 것들은 다시 생각할 수 있습니다. Map의 Saved 속성과 UserControl 속성도 확인하십시오. 이것들은 폐쇄시에 방해가 될 수 있습니다.

btw, Ken White는 근본적으로 정확합니다. 위에서 언급 한 속성은 특정 가장자리의 경우 문제를 일으킬 수있는 것일 뿐이며 사용자를 참조 할 수도 있습니다.

관련 문제