Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Programowanie obiektowe & (ocx or dll)
anonim




Typ: Nie zarejestrowany
Programowanie obiektowe & (ocx or dll)

Mam taki problem.

Napisałem kilka ocx-ów do mojego programu.
Tak żeby każda część programu była oddzielona i łatwa w utrzymaniu. Ale taraz problem!

Żeby to wszystko działało kontrolka musi być zarejstrowana w systemie. A jak zarejstrowana w systemie to raczej powinna być wstecznie kompatibilna do poprzednich wersji.

A teraz pytanie.
1. Czy da się żeby kontrolka działała bez rejstracji w Windzie.

2. Jak nie to jak zrobić żeby to wszystko działało.

Chcę żeby w moich programach było tak jak w proffesionalach. To znaczy mam 1 EXE i dll or ocx które nie muszą być zarejstrowane a chodzą razem z aplikacją.

Przykład!
Mam kontrolkę abc.ocx napisana prze ze mnie.

Piszę sobię program A i wykorzystuję kontrolkę abc.ocx Kontrolka jest w tym samym folderze co program

Teraz program B i jednocześnie wnoszę pewne poprawki do kontrolki abc tak że tracę kompatybilność wsteczną. Kontrolkę daję z tą samą nazwą(abc.ocx) do folderu z programem B.

Teraz chcę żeby to chodziło i nie zależało od rejstracji w windzie.

Przeczy to całej zasadzie ocx-ów. Może trzeba przerobić to na dll i jak to zrobić jeżeli chodzi o program A i B.

Ale pokręciłem. Jak coś nie jasne to piszcie.
Jak nie da się tego pod VB to napiszcie jak to zrobione np. pod C++

Z góry dzięki.
Jestem Seros możę się się kiedyś zarejstróję.
Na razie brak czasu....

12-04-2003 16:47
  
Q



Typ: moderator
Postów: 38
Zarejestrowany: Apr 2002

Te profesjonalne programy używają zwykłych bibliotek DLL, które mogą być dynamicznie dołączane, i których w VB nie zrobisz.


_____________________________________________
Dobre programy dzielą się na te, których nikt nie wymyślił i na te, których nikt nie napisał.

12-04-2003 17:22
Pokaż profil Q  Wyślij email do Q   Odwiedź stronę Q       69629311    1284020
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

Należy zastosować prostą sztuczkę:
trzeba samemu zadbać o rejestrowanie plików. Przy pierwszym uruchomieniu programu należy z windows\system uruchomić programik regsvr32.exe z parametrem np. regsvr32.exe program.ocx

Oczywiście plik właściwy nie może tego robić, bo się nie uruchomi bo OCX nie jest zarejestrowany, ale mozna to obejść tworząc mały plik EXE o nazwie start.exe który rejestruje pliki OCX i uruchamia za pomocą instrukcji SHELL plik program.dat (plik DAT to zwykły EXEk ale ze zmienionym rozszerzeniem, aby nikt go nie uruchamiał). Rozwiązanie trochę przekombinowane, ale jak ma działać to trzeba kombinować ;-)


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

12-04-2003 17:29
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
Wszystkich odpowiedzi: 2 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1