Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: instalator
thot
lol



Typ: neutral
Postów: 47
Zarejestrowany: Jun 2003
instalator

1.
zrobiłem instalator i chciałbym aby rejestrował ocx i dll
ale tak aby nie wyskakiwały żadne okno i komunikaty regsvr32.exe
gdy dodam parametr /s to nie wyskakują mi zadne komunikaty ale
za to dalej przez ułamek sekundy pokazyje mi sie okno regsvr32.exe
rozwiązaniem może być ustawienie ontop dla formy ale nichcem stosować
tego

2.
czasem spotykam programy które wogule nie rejestrują swoich ocx
są pakowane w jedno archiwum więc nasuwa mi się pytanie czy trzeba rejestrować
ocx i dll ???


_____________________________________________
nie chce ci sie deklarowac api?
nie chcesz pisac dlugich funkcji?
chesz miec mozliwosc kolorowania napisu na
commandbutionie i wiele innych ciekawych funkcji?

-ściągnij kontrolkę FkFx
www.fkfx.webpark.pl

14-07-2003 14:10
Pokaż profil thot  Wyślij email do thot   Odwiedź stronę thot       4138988
Chudy
[TLHW]Wiktor



Typ: moderator
Postów: 574
Zarejestrowany: Aug 2002

1. Masz tu przydatną funkcje:
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
Private Const ERROR_SUCCESS = &H0

Public Function RegisterServer(hWnd As Long, DllServerPath As String, bRegister As Boolean)
    On Error Resume Next

    Dim lb As Long, pa As Long
    lb = LoadLibrary(DllServerPath)

    If bRegister Then
        pa = GetProcAddress(lb, "DllRegisterServer"
    Else
        pa = GetProcAddress(lb, "DllUnregisterServer"
    End If

    If CallWindowProc(pa, hWnd, ByVal 0&, ByVal 0&, ByVal 0& = ERROR_SUCCESS Then
        MsgBox IIf(bRegister = True, "Registration", "Unregistration" + " Successful"
  Else
        MsgBox IIf(bRegister = True, "Registration", "Unregistration" + " Unsuccessful"
    End If
    FreeLibrary lb
End Function


Wklej to do jakiegoś modułu i potem możesz już łatwo kożystać z funkcji. Aby zarejestrować kontrolke wpisz np.:
RegisterServer Form1.hWnd, "TU WPISZ ŚCIERZKĘ DO KONTROLKI", True
aby odrejestrować kontrolkę wpisz:
RegisterServer Form1.hWnd, "TU WPISZ ŚCIERZKĘ DO KONTROLKI", False
Ale uważaj, jeśli podasz złą ścierzkę do kontrolki to VB się wiesznie.


_____________________________________________
Projekt "Thunder Cannons" nadchodzi...

14-07-2003 21:17
Pokaż profil Chudy  Wyślij email do Chudy   Odwiedź stronę Chudy       1220895
Wszystkich odpowiedzi: 1 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1