Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Microsoft Visual Studio 2005 Express Edition
Konnekt | Forum > Developerzy > Tworzenie wtyczek
hao
Microsoft udostępnił finalną wersję pakietu MSVS C++ 2005 EE. Przez najbliższy rok będzie dostępna za darmo! Później cena pakietu ma oscylować wokół $25, co bynajmniej ceną zaporową nie jest, ale warto się już teraz zaopatrzeć w darmową wersję.

Jest to pełnoprawne IDE, kompilator obsługuje optymalizacje, oraz standard C++.

http://msdn.microsoft.com/vstudio/express/visualc/download/

http://msdn.microsoft.com/vstudio/express/support/install/

Nie ma gwarancji, że nagłówki są kompatybilne i skompilowane wtyczki będą dobrze działały z Konnektem, ale przy poprzedniej aktualizacji na MSVS 7.1 obyło się bez żadnych problemów, więc i teraz mam nadzieję ich nie będzie...

HOWTO

Stworzenie nowego projektu:



Szkielet wtyczki
Zawartość głównego pliku .cpp zastępujesz ( Copy/Paste :] ) plikiem template.cpp stąd Kliknij, aby zobaczyć załącznik (Konnekt_SDK_VS_2005.zip) i dodajesz do projektu zawarty tamże plik plug_defs.cpp (są drobne różnice między nimi a wersjami z SDK).

Kompilacja
Przypominam, że jeśli planujesz rozpowszechniać wtyczkę wskazane jest skompilować ją w wersji Release ;-) . Visual Studio trzyma dwie wersje konfiguracji (Debug/Release), w obu trzeba ustawić tak samo opcje podane na screenach (część screenów jest z Debug, częśc z Release, wszystkie dotyczą obu konfiguracji).

Express
Ta wersja IDE wymaga doinstalowania Microsoft Platform SDK. Tutorial po angielsku, prosty i czytelny: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/

Jest jedna mała różnica w tworzeniu projektu: Kreatora/wizarda trzeba wywołać przez "Win32 Console Application", opcja "Win32 Project" nie jest widoczna.
angelo
tylko, że w wersji express o ile pamiętam c++ występuje jedynie w wersji managed (poza win32 console app) :] co już może stanowić mały problem.

inna sprawa, że express rządzi -- choć ja nadal w 7.1 piszę, ale raczej z rozpędu i faktu, że .net 1.1 jest dostępny już chyba wszędzie, a z 2.0 jeszcze to chwilę potrwa :]
hao
Jeżeli można tworzyć niezarządzane biblioteki w C++ to już wystarczy do działania z Konnektem... Niewątpliwie przydałby się edytor zasobów do tworzenia okienek, ale o ile mnie pamięć nie myli - w EE go nie ma.

Nie zagłębiałem się w niego, ale mam nadzieję, że jak ktoś ściągnie, to sprawdzi co da się z nim zrobić smile.gif
angelo
no właśnie w tym sęk, że w expresie nie ma opcji. w pełnym studio owszem, natomiast expresy są mocno uproszczone. nie wrzuci się np. do jednego projektu C# i C++ - trzeba trzymać dwie osobne instancje IDE dla każdego i ręcznie robić "dependency", no i ten brak unmanaged. pamiętam, że się z tym męczyłem, tylko, że ja to robiłem na wersji beta expresów. no ale z tego co słyszałem, w release to się nie zmieniło :]
skolima
Dodanie unmanaged nie jest wcale skomplikowane. Odsyłam do zaktualizowanego pierwszego posta.
dulek000
Jak myślicie, lepiej używać przysłanej Beta2, czy tego EE?
skolima
Enterprise. Pierwsze, co dla niektórych ma znaczenie, EE jest legalne :]

Drugie, do Bety nie dostaniesz już żadnego supportu.
dulek000
Betę też mam legalnie, a z supportu i tak bym nie korzystał. Chodzi mi o ważne dla wtyczek sprawy. Czy EE ma jakieś ważne poprawki w porównaniu do Beta2?
KoSiarzPL
Beta miła jeszcze naprawdę dużo błędów, które potrafily wkurzyć. Mówię o programowaniu w C#. Myślę, że z C++ jest podobnie.

Dodam jeszcze 3 grosze do pierwszego postu.
Polecam wam używać innego szkieletu na nowe wtyczki, nowy szkielet wtyczek
Olórin
Beta była nie stabilna, lubiała sie wywalać.
skolima
Betę masz legalnie, ale nie możesz legalnie wydawać tego, co pod nią napiszesz.
dulek000
Nawet niekomercyjnie?
Olórin
Przeanalizuj licencję...
dulek000
Chciałem spróbować skompilować wtyczkę za pomocą VC 2005. Wedle wskazówek wyłączyłem tworzenie manifestu. Niestety - przy uruchamianu wyskakuje mi taki błąd:
CODE
R6034

An application has made an attempt to load the C runtime library without using a manifest.
This is an unsupported way to load Visual C++ DLLs. You need to modify your application to build with a manifest.
For more information, see the "Visual C++ Libraries as Shared Side-by-Side Assemblies" topic in the product documentation.


Gdy włączę tworzenie "embedded manifest" to wtyczka u mnie działa, ale nie uruchamia się na innych komputerach.
mleko
mam Visual C++ 2005 Express Edition
i po wybraniu win32 console appl. nie mam opcji DLL mozliwej do wyboru sad.gif
dulek000
To nie przeszkadza - możesz ustawić DLL-a w opcjach projektu.
Komodo
Czy mając Visual Studio 2005 Professional z uczelni na licencji MSDN AA mogę pisać i publikować wtyczki do konnekta?
dulek000
Jeżeli uda Ci się pozbyć błędu opisanego przeze mnie kilka postów wcześniej to tak. wink.gif
k3mpa
ja kompilowałem już pare źródeł wtyczek na vs 2005 pro i jak narazie brak jakich kolwiek błedów wink.gif zar nei pamietam co miało podobny błąd
KoSiarzPL
Problemów z ich działąniem też nie zauważyłeś?
k3mpa
http://blog.kalmbachnet.de/?postid=54

więc jeśli się nie da wygrać z wrogiem trzeba się z nim zbratać, jeśli dacie na generowanie manifestu to powinien wam się pojawić w katalogu jeszcze jeden plik np. wtyka.dll.intermediate.manifest trzeba go razem z pluginem wrzucić do katalogu i działa. zresztą sami sprawdzicie smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2012 Invision Power Services, Inc.