Próbuję opracować aplikację C++ dla klienta. Do tej pory dodałem podstawowe funkcje i działa zgodnie z oczekiwaniami, ale prawdopodobnie będę stopniowo rozwijać wniosek w przyszłości (tj. Dodawanie więcej funkcji), a klient prawdopodobnie zaktualizuje te funkcję w swojej aplikacji. Teraz moje pytania są następujące:

  1. Aby dodać funkcję, zdecydowałem się dodać funkcje do dll, a klient prawdopodobnie zastąpi stary dll z nową (w celu korzystania z najnowszych funkcji). Czy istnieje lepsze podejście do aktualizacji aplikacji {X2}}?

  2. Dlaczego niektórzy deweloper używają wartości porządkowych zamiast nazw funkcyjnych podczas eksportowania symboli, co skorzysta do korzystania z wartości porządkowych innych niż mniej binarnego rozmiaru pliku?

Nie chcę, aby mój klient mógł zmienić / łączyć aplikację, chcę tylko zachować proces aktualizacji tak gładko, jak to możliwe. Potrzebuje porady.

P.S: Środowisko = Windows + Visual Studio

0
Nouman Tajik 17 lipiec 2020, 10:02

1 odpowiedź

Najlepsza odpowiedź

@Vasilij sposób to sposób na wyjazd. Jeśli aktualizujesz tylko de DLL, jak aplikacja będzie wiedziała, że wezwanie nowych funkcji? Musisz dynamicznie dostosować menu i tak dalej.

Wystarczy utworzyć odcinek exe, który prowadzi prawdziwą aplikację (może być w podprocesowej, może zabić) i zaktualizować całą aplikację (nie stub) i DLL s, gdy jest to konieczne. Ten stub może sprawdzić aktualizacje i sugerować restart po pobraniu.

0
Manuel 17 lipiec 2020, 11:33