2008-09-12 18 views
3

MS MapPoint 2009'u C# 'daki WinForms .Net 2.0 uygulamasına entegre etme konusunda bazı sorunlar yaşıyorum. ActiveX MapPoint denetimini bir forma ekledim ve bir harita ve konum görüntülemek için sorun yaşamadım; Benim endişem, oluşturulduktan sonra bir haritayı yüklemek için gereken süredir.MapPoint 2009 Yük Performansı

Geliştirme makinemdeki testler, uygulamanın tamamıyla kilitlendiği ortalama yük süresinin 3 ila 5 saniye olduğunu gösterdi. Bu tamamen kabul edilemez olmakla birlikte, uygulamanın kontrolünü kaybetmek oldukça uzun bir süre. Ayrıca, GUI iş parçacığı kilitli olduğundan yükleme saatini maskelemek için bir yükleme iletişim kutusu veya bir şey gösteremiyorum.

askıda çizgi şudur: I NewMap bir parçacığı üzerinde bir yöntem, ancak GUI iplik hala bloke olma biter yürütme denedik

axMappointControl1.NewMap(MapPoint.GeoMapRegion.geoMapNorthAmerica); 

(axMappointControl1 MapPoint kontrol) içine alır.

Sorularım şunlardır:

  • Ne yüklendiğinde MapPoint hızlandırmak için ne yapabilirim?
  • MapPoint'i, GUI iş parçacığını engellemeyecek şekilde yüklemek için herhangi bir yolu var mı?

Herhangi bir yardım büyük beğeni topluyor.

cevap

5
ActiveX başlatma yavaşlığı GUI yanıt yardımcı olmak için diş çekme sorusu hala açık olsa (iyi bilinen ve kaçınılmaz mapforums.com de these threads göre

.

bir şey önerdi ActiveX sürümünü terk etmek oldu . yardımcı MapPoint.Application nesnesi yerine

Umut lehine

1

Evet Uygulama sürümü kendi iş parçacığı üzerinde çalışır -. yani bu daha hızlı bir alternatif olmalı - kolay kendi şeyler yapmak o başlayan iken yukarı, ancak MapPoint 2010, bir kullanıcı tarafından başlatıldığında başlamak için birkaç saniye sürmektedir.

Geçici bir GUI iş parçacığı oluşturur ve bunu başlatmak için bir açılış ekranı görüntülemek ve/veya yapmanız gereken iş parçacığı için güvenli bir ilkelleştirme yapmak için kullanırım.

MapPoint örneğinin (veya ActiveX denetiminin) tüm aramaları, MapPoint denetimini veya uygulama nesnesini oluşturan aynı iş parçacığından olmalıdır.