Über SpyWorks Professional

Fangen Sie den Low-Level-Meldungsstrom für jede beliebige Anwendung oder das gesamte System auf einmal ab.

Die ActiveX-Komponentensammlung SpyWorks richtet sich an Entwickler, die eine Kerngruppe fortschrittlichster Programmiertools für Visual Basic 5.0/6.0 benötigen. SpyWorks bringt den zu Grunde liegenden, durch Visual Basic verborgenen Betrieb des Windows-Systems an die Oberfläche und ermöglicht Entwicklern dadurch, sich sämtliche Funktionalitäten von Windows zu Nutze zu machen, u. a. API-Funktionen, ActiveX-Erweiterungen, die API-Klassenbibliothek von Desaware - und vieles andere mehr.

Was ist neu in V8.0?

SpyWorks 8.0 verkörpert eine wichtige Aufspaltung in der Entwicklung des Pakets. Als solches kann es auf demselben Rechner wie Version 7.1 installiert werden. Es beinhaltet ein komplett neues Komponentenset und eine separate Subclassing/Hook Engine.

Wichtige Änderungen folgendermaßen:

  • Anti-Spyware Technologie. Diese Änderungen wurden vorgenommen um zu verhindern, dass die SpyWorks Komponente falscherweise als Spyware identifiziert werden. Das tut es in zwei Gestalten: Erstens haben die neuen Subclassing und Hook controls eingebaute Einschränkungen die es ihnen unmöglich machen Tastendrücke von gewissen Fenstern (wie z.B. Textboxen die zum Passwörter eingeben benutzt werden) aufzufangen, um die Komponenten weniger nutzvoll für SpyWare Autoren zu machen. Zweitens wurden die Komponente umbenannt, damit sie nicht die Worte “Spy”, oder “SpyWorks”  beinhalten, da diese Verwirrung bei End Usern verursachten.
  • SpyWorks V8.0 bietet eine verbesserte Handhabung von Windows Hooks, besonders bezüglich der Wiederherstellung beim Absturz von Anwendungen.
  • SpyWorks V8.0 beinhaltet keine Light Edition des NT Service toolkits. Diese Änderung wurde vorgenommen, da das komplette Toolkit in dem Universal COM Produkt enthalten ist.

Was ist neu in V7.1?

Vom SpyWorks-Steuerelement Windows Hook und der Komponente Desaware.SpyWorks.WinHook werden 3 neue Hook-Typen unterstützt. Die neuen Typen wurden dem Betriebssystem Windows NT ab der Version NT 4.0 SP 3 (oder 4) hinzugefügt. Das bedeutet, dass Sie diese Hook-Typen nicht unter Windows 95/98/ME einsetzen können.

Der Low Level Keyboard Hook ermöglicht Ihnen die Identifizierung von Systemtastenkombinationen, die von einem "standardmäßigen" Tastatur-Hook nicht identifiziert werden können. Bisher gehörte zu SpyWorks ein Demo-Beispiel, das die Identifizierung dieser Tasten anhand einer anderen Methode illustrierte (einer Kombination aus Subclassing und API-Funktionen). Jetzt können Sie Ihr Winhook-Steuerelement direkt einsetzen - und das macht die Angelegenheit um einiges leichter.

Der Low Level Mouse Hook wiederum ermöglicht die Identifizierung der Maus für das gesamte System. Er ist mit dem Standard-Maus-Hook vergleichbar, umfasst allerdings einige zusätzliche Informationen und wird zu einem früheren Zeitpunkt eingehängt.

Der Foreground Idle Hook identifiziert den Zeitpunkt, an dem Ihr Anwendungs-Thread in den Standby-Modus wechselt. Dieser Hook kann zur Signalisierung eines Hintergrundbetriebs mit niedriger Priorität herangezogen werden.

Was ist neu in V7.0?

  • Aktualisierte Versionen des Hook- und des Subclassing-Steuerelements von SpyWorks. Die neuen Versionen bieten Unterstützung für die letzte Release von Visual Studio .NET, einschließlich der zugehörigen .NET Primary InterOp-Baugruppen.
  • Unterstützung für den Export von Funktionen aus den Visual Studio .NET-Baugruppen.
  • Diese Aktualisierung kommt mit zahlreichen und vielfältigen Beispielen:
  • Verwendung von Subclassing und Hooks sowohl mit Visual Basic .NET als auch mit C#. Das Subclassing erfolgt dabei sowohl prozessintern als auch Task-übergreifend. Die Hook-Unterstützung wird auf Thread-, Anwendungs- oder Systembasis bereitgestellt. Auch für Tastatur-Hooks wird Unterstützung geboten.
  • Aufrufen von API-Exportfunktionen aus .NET-Anwendungen, u. a. auch von solchen, die auf Parameter zurückgreifen, für die spezielles Marshalling erforderlich ist.
  • Task-übergreifendes Subclassing.
  • Systemweites Monitoring der Maus- und Tastaturtätigkeit.
  • Systemweite Identifizierung von Fenstern (mithilfe der Maus) oder Fensteraufzählung (programmatisch).
  • Erkennung von neu erstellten Fenstern, z. B. von Meldungsfenstern oder allgemeinen Dialogfeldern.
  • Abrufen von Text aus einem Textfeld oder komplexen Textsteuerelement, das zu einem anderen Prozess gehört.
  • Setzen einer Task in den Vordergrund (auch wenn es sich nicht um die aktive Anwendung handelt).
  • Prozessinternes Subclassing unter Rückgriff auf .NET Framework.
  • Aktualisierte Version von NT Service Toolkit (Light Edition), Version 1.1.

Was ist neu in V6.3?

Hiermit liegt die erste Edition von SpyWorks vor, die eine Kompatibilität mit Visual Studio.NET Beta 2 bereitstellt. Neue Features:

Aktualisierte Versionen des Hook- und des Subclassing-Steuerelements von SpyWorks, die nun Unterstützung für Visual Studio.NET Beta 2 bieten.

Beispiele für die Verwendung von Subclassing und Hooks sowohl mit Visual Basic .NET als auch mit C#. Das Subclassing erfolgt dabei prozessintern als auch Task-übergreifend. Die Hook-Unterstützung wird auf Thread-, Anwendungs- oder Systembasis bereitgestellt. Auch für Tastatur-Hooks wird Unterstützung geboten.

Verfügbare Beispiele:

  • Task-übergreifendes Subclassing.
  • Systemweites Monitoring der Maus- und Tastaturtätigkeit.
  • Systemweite Identifizierung von Fenstern (mithilfe der Maus) oder Fensteraufzählung (programmatisch).
  • Abrufen von Text aus einem Textfeld oder komplexen Textsteuerelement, das zu einem anderen Prozess gehört.
  • Setzen einer Task in den Vordergrund (auch wenn es sich nicht um die aktive Anwendung handelt).
  • Prozessinternes Subclassing unter Rückgriff auf .NET Framework.
  • Aufrufen von Funktionen aus .NET-Anwendungen, wenn diese Funktionen unter Rückgriff auf die Dynamic Export-Technologie von Desaware exportiert werden.
  • Aktualisierte Version von NT Service Toolkit (Light Edition), Version 1.1.
  • Hinzugefügte Proxy-Unterstützung für die Winsock-Komponenten von Desaware.

Features:

  • Exportierte Funktionen - SpyWorks leistet durch den Rückgriff auf die Dynamic Export-Technologie Pionierarbeit, da Programmierern dadurch die Möglichkeit zum Export von Funktionen aus mit Visual Basic erstellten ActiveX-DLLs gegeben wird. Für den Funktionsexport zieht die Dynamic Export-Technologie von Desaware eine spezielle Erweiterungs-DLL heran, sodass keinerlei Änderungen an der kompilierten DLL vorgenommen werden!
  • Verwenden Sie Visual Basic 5.0 und 6.0 für die Erstellung von Exportfunktionsbibliotheken sowie Systemsteuerungs-Applets/Erweiterungen.
  • Prozessinternes Subclassing mit Quellencode - Für Subclassing, Hooks und allgemeine Fensterverwaltung umfasst SpyWorks 6 eine Visual Basic-basierte DLL. Unter Rückgriff auf diese Verfahren gelingt es Visual Basic, umfassenden Nutzen aus der zu Grunde liegenden Windows-Funktionalität zu ziehen. Diese Komponente wurde für High Performance im Bereich Meldungsfilterung auf niedriger Ebene konzipiert, für das Sharing von Subclass-Routinen sowie für den größtmöglichen Rückgriff auf eine frühzeitige Datenanbindung. Und sie umfasst einen kompletten Visual Basic-Quellencode.
  • ActiveX-Erweiterungen - ActiveX dreht sich um Schnittstellen, und SpyWorks 6 ist nun eben in der Lage, das Verhalten von Schnittstellen zu überschreiben, die Bestandteil Ihrer mit Visual Basic erstellten Komponenten sind. Ein Beispiel: Sie können Ihren Komponenten neue Standardschnittstellen hinzufügen (insbesondere Standardschnittstellen, die nicht mit Visual Basic kompatibel sind), z. B. die Schnittstelle IObjectSafety, die Ihnen eine absolute Kontrolle über die Sicherheitsmarkierung der für eine Verwendung auf Webseiten vorgesehenen ActiveX-Steuerelemente vermittelt.
  • "Task-übergreifendes" Subclassing - Es besteht die Möglichkeit zum Abfangen von Meldungen für andere Anwendungen im System. Task-übergreifende Funktionalitäten werden unter Microsoft Windows 95 und Microsoft Windows NT unterstützt. Diese Technologie ermöglicht Programmierern sogar den Rückgriff auf Visual Basic bei der Erstellung von Add-Ons für andere Anwendungen.
  • Anpassungssteuerelement dwEasy - Dieses Steuerelement ermöglicht die individuelle Anpassung der Beschriftungen von Visual Basic-Formularen oder Steuerelementen: Es können Größenänderungen vorgenommen und neue Schaltflächen hinzugefügt werden. Mit dwEasy können Sie virtuelle Formulare oder Container erstellen und Formulare und Steuerelemente in Roll-up-Fenster umwandeln.
  • Maus-Tracking - Es besteht die Möglichkeit zur Identifizierung des Zeitpunkts, zu dem die Maus ein Steuerelement in einer Anwendung aufruft bzw. dieses wieder verlässt. Außerdem werden virtuelle Formulare unterstützt. Darüber hinaus können zahlreiche systemweite Standardereignisse identifiziert werden, durch die sich Aussehen und Windows 95-Kompatibilität einer Anwendung verbessern lassen.
  • Automatische Unterstützung für Datei-Drag&Drop in Verbindung mit Windows-Shortcuts - Sie können jetzt über Visual Basic eigene Shortcuts erstellen.
  • API-Funktionen - SpyWorks stellt Tools bereit, die einen effizienten Zugriff auf Windows-basierte API-Funktionen (Application Programming Interface) ermöglichen, die normalerweise von Visual Basic aus nicht zugänglich sind. Dazu gehören folgende Funktionen:
  • Packfunktionen für benutzerdefinierte Typen - Bei der Übertragung von benutzerdefinierten Typen an eine DLL bietet Visual Basic keine Unterstützung für die Einzelbyte-Datenpaketerstellung. Dadurch gestaltet sich die bedarfsgerechte Definition einiger API-Strukturen in Visual Basic überaus kompliziert. Mit der Gruppe neuer UDT-Packfunktionen, die in SpyWorks Professional bereitsteht, wird das Packen und Entpacken benutzerdefinierter Typen jetzt zum Kinderspiel.
  • API-Klassenbibliothek von Desaware - Eine leistungsstarke neue Möglichkeit, in Visual Basic und VBA-basierten Anwendungen optimalen Nutzen aus der gesamten Power der Windows-API zu ziehen. Die "Desaware API Class Library" kommt mit einem kompletten Visual Basic-Quellencode und lässt sich als Standalone-API-Objektbibliothek einsetzen - für die Einbettung von Klassen in Anwendungen wie auch für das direkte Hinzufügen von Inline-Code in Programmen.
  • Unterstützung für indirekte API-Aufrufe - Zum ersten Mal verfügen Sie jetzt über die Möglichkeit, eine API-Funktion von VB aus aufzurufen, ohne dazu den Namen der DLL in einer Definitionsanweisung hardcodieren zu müssen. Sowohl der Name der DLL als auch der Name der Funktion können während des Betriebs angegeben werden. Damit lassen sich allgemeine Tasks, wie z. B. das Registrieren oder Entregistrieren von COM-Komponenten, wesentlich leichter durchführen.
  • SMTP-Komponente - Diese neue Komponente baut auf den gängigen Winsock-Komponenten von SpyWorks auf und ermöglicht Ihnen das problemlose Senden von E-Mails ausgehend von Ihrer Anwendung. Ursprünglich wurde diese Komponente zur Unterstützung der E-Mailübertragung ausgehend von VB-IIS-Anwendungen und ASP-Seiten konzipiert.
  • Mausrad-Unterstützung für dwEasy36.ocx - Das Steuerelement dwEasy ermöglicht nun das direkte Monitoring des Rädchens auf Ihrer Maus. Auch das automatische Abrollen eines Fensters mit dem Mausrad ist möglich, wenn das Scrolling in einem virtuellen Formular aktiviert ist.
  • Verbesserter dynamischer Ladeprozess - Visual Basic 6 unterstützt das dynamische Laden von ActiveX-Steuerelementen. Damit wird die Unterstützung für dynamische Ladevorgänge auf den neuesten Stand gebracht und grundlegend verbessert. Ein Beispiel: dwEasy36.ocx ist nunmehr in der Lage, ordnungsgemäß mit einem Formular zu interagieren, das während des Betriebs platziert wird.
  • Unterstützung für die Schnittstelle IviewObject - Die ActiveX-Erweiterungskomponente von SpyWorks ermöglicht jetzt das Überschreiben der Schnittstelle IviewObject. Dadurch können in Visual Basic ActiveX-Steuerelemente erstellt werden, die sich in Übereinstimmung mit dem ActiveX-Standard fehlerfrei skalieren und drucken lassen. Sogar das Drucken und Anzeigen von Grafiken unsichtbarer Steuerelemente ist möglich.
  • Dienstprogramm zur API-Eingangspunktsuche - Hatten Sie jemals Schwierigkeiten, eine DLL mit einer bestimmten API-Funktion zu identifizieren? Oder herauszufinden, ob Sie für einen Funktionsnamen ein 'A'- oder 'W'-Suffix benötigen? Das neue Dienstprogramm für die API-Eingangspunktsuche kann die API-Funktionen in allen DLLs anzeigen bzw. identifizieren oder durchsucht Ihr gesamtes Systemverzeichnis nach einer Funktion.
  • Verbesserte NT Service-Unterstützung - Durch die Verbesserung der Thread-Synchronisation konnten wird unsere NT Service-Klassen um einiges verbessern. Unsere NT Service-Lösung hat dadurch grundlegend an Stabilität und Zuverlässigkeit gewonnen.
  • Verbesserte Querverweise für Beispielprogramme - Das Online-Hilfesystem umfasst jetzt Querverweise für fast alle Beispielprojekte, sodass Sie problemlos spezifische Lösungen und Beispiele aufrufen können.