Hi Dieter,
vielen Dank füe Deine Hilfe. Gerade eben habe ich eine Lösung für mich gefunden.
Leider ist die Lösung nur bedingt brauchbar. Das Problem liegt wieder einmal an den Rechten in der Registry.
Seit wann dies ist kann ich nur vermuten, bemerkt habe ich es ab dem "sevCMDv3" im
Zusammenhang mit der DLL "sevIMLib.DLL". Damals konnte ich als Hauptbenutzer
keine Icons im Control verwenden. Die Ursache waren die Rechte in der Registry.
Nun habe ich die Rechte wieder geändert und die CD so zum Laufen bekommen.
Fakt ist:
- seit sevCMDv3 bemerke ich dies
- Controls anderer Hersteller auch Dein "sevCommand v2" waren und sind derzeit nicht betroffen!
- Seit kurzem scheinen immer mehr in der neuen Version installierten Controls (z.B.
von der DevCD) ein gleiches Verhalten zu zeigen. sevCoolBarv2, sevEin20, sevXPCtl...
=> irgendwie wurde die rechtevererbung bei den betroffenen Controls aufgehoben????
- Als Administrator, unter dem die Controls ja auch installiert werden geht alles!
- Als z.B. Hauptbenutzer ist eine Registryanpassung erforderlich.
- Das Verhalten zeigt sich auf meinem Arbeits-PC (W2k SP4) genauso, wie auf dem Privat-PC (WXP pro SP2)
Was hilft bei mir:
Im Zweig "HKEY_CLASSES_ROOT" ändere ich für die betroffenen Controls
händisch nach jedem Update die Rechte (bis die Finger glühen)
=> sevCommand3.Command
=> sevCommand3.Init ....
Dann kann ich als "Hauptbenutzer" plötzlich wieder voll arbeiten.
Nun grüble ich schon wie ein Weltmeister um irgendwie eine Ursache zu finden.
=> Viren und Würmer scheiden aus. (NAV Corporated Edition v10.1 und F-Secure 2007 können absolut nix finden!)
=> Meine eigene Anwendung zeigt bzgl. der selbst geschriebenen ActiveX-Dlls
ein ähnliches verhalten. Hier liegt der verdacht sehr nahe, daß dies erst
so ist, seit dem ich einen Tipp aus dem Forum verwendete, der die Registrierung der
Komponenten beim Start der Applikation verwendte.
Public Function fkt_bFileRegister(ByVal sFile As String, Register As Boolean) _
As Boolean
'Die nachfolgende Funktion führt die Registrierung/De-Registrierung durch
'Der Parameter sFile enthält die zu registrierende Datei (inkl. Pfad)
'Register: True -> Datei soll registriert werden
' False -> Datei soll deregistriert werden
'
Dim bResult As Boolean
Dim lngLib As Long
Dim sProc As String
Dim lngResult1 As Long
Dim lngResult2 As Long
Dim lngThread As Long
On Local Error GoTo RegError
bResult = False
lngLib = LoadLibrary(sFile)
If lngLib Then
sProc = IIf(Register, "DllRegisterServer", "DllUnregisterServer")
lngResult1 = GetProcAddress(lngLib, sProc)
If lngResult1 Then
lngThread = CreateThread(ByVal 0, 0, ByVal lngResult1, ByVal 0, 0, _
lngResult2)
If lngThread Then
lngResult2 = WaitForSingleObject(lngThread, 10000)
If lngResult2 Then
'Fehler aufgetreten
FreeLibrary lngLib
lngResult2 = GetExitCodeThread(lngThread, lngResult2)
ExitThread lngResult2
Exit Function
End If
CloseHandle lngThread
'OK
bResult = True
End If
End If
FreeLibrary lngLib
End If
RegError:
fkt_bFileRegister = bResult
Exit Function
End Function Diesen Code verwende ich nun nicht mehr. Kann es sein, daß heirdurch die Registy ggf. "leiden" kann?
Nun bin ich sehr daran interessiert, ob Du oder jemand anderes ähnliches
kennt. Gibt es einen "Work around" in welchem solch Problem mit einer
Lösung beschrieben ist?
Weiterhin bin ich auf der Suche nach einem Tool, welches mir die Handarbeit
beim Ändern der rechte abnehmen kann.
Hauptsache, ich muß meine PC's nicht neu aufsetzen um ggf. das Problem
zu beheben.
So, ist leider wieder aml etwas mehr geworden, doch irgendwie will
ich diese ewige Änderei umgehen.
Ist ja langsam peinlich Dich mit vermuteten Problemen zu belasten, die
vielleicht tatsächlich nichts mit Deinen Tools zu tun haben.
Danke für die Unterstützung.
Tschaui
Woellmi |