![]() |
Festplattenzugriff sichtbar machen (LED im Tray)
Hi,
ich möchte gerne ein kleines Tool schreiben, was mir im Tray "sagt" das auf die festplatte zugegriffen wird. Leider habe ich nix darüber gefunden. Im Tray soll z.b. ein kleines LED sein, was dann z.b. angeht bzw. ausgeht. Ich wollte einen Timer machen das alle xxxms irgendwo abfragt ob grade ein zugriff läuft. Blos weiss ich halt nicht wo. Danke im voaraus |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ist das hier der falsche Thread? Wenn ja, dann sorry....
|
AW: Festplatten zugriff sichbar machen (LED im Tray)
Vom Themenbereich hätte ich es jetzt eher bei der WinAPI gesehen, aber daran soll es jetzt sicher nicht scheitern...
Spontan wüsste ich nichts und habe auf die Schnelle auf MSDN auch nichts gefunden - Ich kenne nur den Windows-Ressourcenmonitor der für jeden Prozess seinen Festplattenzugriff (Lese/Schreibrate, geöffnete Dateien, ...) anzeigen kann. Allerdings sind selbst dort die Werte nicht top-aktuell, ich wäre nicht überrascht, wenn man seit WinNT die "IDE-LED" nicht mehr softwareseitig ersetzen kann. |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Erstmal danke für den hinweis. Ich dachte mir heute morgen schon das es der falsche Thread ist. Weil wenn ich was gelernt habe, ist es, das man hier wirklich hilfe bekommt. Selbst wenn ich mal was blödes frage, weil ich grade den Wald vor lauter bäumen nicht sehe. :oops:
Irgendwas müsste es aber geben, glaube ich. Es gibt ja z.b. von O&O DriveLED. Die zeigen das auch an. Aber ansonten ist die Soft von denen nicht so doll. Deswegen wollte ich mir da selber was "basteln" was ich z.b. auch Remote abfragen kann. Ist ja z.b. mit Clever oder Indy kein problem. |
AW: Festplatten zugriff sichbar machen (LED im Tray)
DriveGLEAM is a harddrive activity indicator and also include built in extensions for monitoring CPU and memory load. It works by immitating the harddrive LED on screen. This is a very useful if your computer case is hidden (under the table) or on another physical location (remote desktop). DriveGLEAM features independent indicators for each drive or partition and allows you to monitor both read and write access. As a option DriveGLEAM allows for external output (via the parallel port) so it will be possible to build a LED panel for monitoring your hard-drives with real physical LED's. The difference between the build in HDD access LED on your computer case and DriveGLEAM external ones is that DriveGLEAM allows for independent colored LED's for read or write access. DriveGLEAM can also use your keyboard's scroll lock LED as a activity indicator.
How DriveGLEAM works: None of your business - it's top secret ;) . ![]() Colors are RED = write, GREEN = read, YELLOW = read+write and finaly BLUE = idle ![]() ![]() . . FloatLED is a free and super space optimized Drive monitoring LED software. An neat little program that monitors drive activity and shows them as blinking read, write and read/write icons in a mini optimzied floating window to place anywhere on your workspace. Preferbly on the titlebar. Auto detects whenever a Drive is removed or turned on (USB HDD's for instance). ![]() |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ja genau sowas meine ich. Also fast ;)
Ich hätte nur gerne selber gemacht. |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Mit Sicherheit ist das möglich. Schau dir z.B. mal die Software
![]() Wie das genau funktioniert, weiß ich nicht... Ich vermute aber mal, dass das Programm globale API-Hooks benutzt und somit alle möglichen Schreib/Lese-Funktionen von Windows hookt... |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Hi,
ich würde hier ansetzten : ![]() da kann man Tod und Teufel abrufen, ist aber sehr komplex man kann auch die WMI oder SNMP bemühen -- hab zZt. leider nix fertiges da, steht auf meiner TODO-List auf Seite 3 mfg |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Zitat:
|
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ah, okay, gut zu wissen ;)
Wird dann wohl mit Delphi schwierig... |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Also bleibt es ein wunschtraum? Schaaaade....
Trotzdem vielen dank |
AW: Festplatten zugriff sichbar machen (LED im Tray)
HDDLED:
![]() ist von troubadix =Dr. Raimund Schmitz ![]() info@medizin-physik-experte.de |
AW: Festplatten zugriff sichbar machen (LED im Tray)
DiskMon is an application that logs and displays all hard disk activity on a Windows system.
You can also minimize DiskMon to your system tray where it acts as a disk light, presenting a green icon when there is disk-read activity and a red icon when there is disk-write activity. Installation and Use Installing DiskMon is as easy as unzipping it and typing, "diskmon." The menus and toolbar buttons can be used to disable event capturing, control the scrolling of the listview, and to save the listview contents to an ASCII file. To have DiskMon function as a disk light in your system tray, select the Options|Minimize to Tray menu item, or start DiskMon with a "/l" (lower-case L) command-line switch e.g. diskmon /l. To reactivate the DiskMon window double-click on the DiskMon tray icon. To create a shortcut to Diskmon in the tray create a shortcut in your Program Files\Startup folder, edit the properties of the shortcut and set the Target to point at the executable with the path in quotations and the switch outside the quotes: "C:\Sysinternals Tools\Diskmon.exe" /l ![]() |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ich glaube, einen Weg gefunden zu haben, wie man auch mit DELPHI eine HDD-READ/WRITE-Anzeige realisieren kann. :-D
Stichwörter: Device Input and Output Control (IOCTL) = DeviceIoControl ![]() The DeviceIoControl function provides a device input and output control (IOCTL) interface through which an application can communicate directly with a device driver. The DeviceIoControl function is a general-purpose interface that can send control codes to a variety of devices. Each control code represents an operation for the driver to perform. For example, a control code can ask a device driver to return information about the corresponding device, or direct the driver to carry out an action on the device, such as formatting a disk. - Gefunden hier: { ref JwaWinIoctl.pas } unit winconst_ioctl;
Delphi-Quellcode:
// This structure defines the disk logging record. When disk logging
// is enabled, one of these is written to an internal buffer for each // disk request. // PDISK_RECORD = ^DISK_RECORD; _DISK_RECORD = record ByteOffset: LARGE_INTEGER; StartTime: LARGE_INTEGER; EndTime: LARGE_INTEGER; VirtualAddress: Pointer; //PVOID; NumberOfBytes: DWORD; DeviceNumber: BYTE; ReadRequest: ByteBool; end; DISK_RECORD = _DISK_RECORD; TDiskRecord = DISK_RECORD; PDiskRecord = PDISK_RECORD; // // The following structure is exchanged on an IOCTL_DISK_LOG request. // Not all fields are valid with each function type. // PDISK_LOGGING = ^DISK_LOGGING; _DISK_LOGGING = record Function_: BYTE; BufferAddress: PVOID; BufferSize: DWORD; end; DISK_LOGGING = _DISK_LOGGING; TDiskLogging = DISK_LOGGING; PDiskLogging = PDISK_LOGGING; // // Disk logging functions // // Start disk logging. Only the Function and BufferSize fields are valid. // const DISK_LOGGING_START = 0; // // Stop disk logging. Only the Function field is valid. // DISK_LOGGING_STOP = 1; |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Zitat:
|
AW: Festplatten zugriff sichbar machen (LED im Tray)
So geht es:
WMI Class: Win32_PerfFormattedData_PerfDisk_PhysicalDisk Instance: Name: 0, 1, 2, etc. für HDD0, HDD1, HDD2 etc. Durch Auswertung der READ/WRITE-Werte kann man dann einem Panel o.a. eine Farbe zuweisen. Beispiel: AvgDiskBytesPerRead: 0 AvgDiskBytesPerTransfer: 0 AvgDiskBytesPerWrite: 0 AvgDiskQueueLength: 0 AvgDiskReadQueueLength: 0 AvgDisksecPerRead: 0 AvgDisksecPerTransfer: 0 AvgDisksecPerWrite: 0 AvgDiskWriteQueueLength: 0 CurrentDiskQueueLength: 0 DiskBytesPersec: 0 DiskReadBytesPersec: 0 DiskReadsPersec: 0 DiskTransfersPersec: 0 DiskWriteBytesPersec: 0 DiskWritesPersec: 0 Name: 0 D: F: C: E:--------------------> HDD0 PercentDiskReadTime: 0 PercentDiskTime: 0 PercentDiskWriteTime: 0 PercentIdleTime: 100 SplitIOPerSec: 0 AvgDiskBytesPerRead: 1048576 AvgDiskBytesPerTransfer: 1048576 AvgDiskBytesPerWrite: 0 AvgDiskQueueLength: 1 AvgDiskReadQueueLength: 1 AvgDisksecPerRead: 0 AvgDisksecPerTransfer: 0 AvgDisksecPerWrite: 0 AvgDiskWriteQueueLength: 0 CurrentDiskQueueLength: 2 DiskBytesPersec: 37756348 DiskReadBytesPersec: 37756348 DiskReadsPersec: 36 DiskTransfersPersec: 36 DiskWriteBytesPersec: 0 DiskWritesPersec: 0 Name: 2 H:--------------------> HDD2 PercentDiskReadTime: 100 PercentDiskTime: 100 PercentDiskWriteTime: 0 PercentIdleTime: 1 SplitIOPerSec: 0 AvgDiskBytesPerRead: 0 AvgDiskBytesPerTransfer: 0 AvgDiskBytesPerWrite: 0 AvgDiskQueueLength: 0 AvgDiskReadQueueLength: 0 AvgDisksecPerRead: 0 AvgDisksecPerTransfer: 0 AvgDisksecPerWrite: 0 AvgDiskWriteQueueLength: 0 CurrentDiskQueueLength: 0 DiskBytesPersec: 0 DiskReadBytesPersec: 0 DiskReadsPersec: 0 DiskTransfersPersec: 0 DiskWriteBytesPersec: 0 DiskWritesPersec: 0 Name: 1 J:--------------------> HDD1 PercentDiskReadTime: 0 PercentDiskTime: 0 PercentDiskWriteTime: 0 PercentIdleTime: 100 SplitIOPerSec: 0 AvgDiskBytesPerRead: 1048576 AvgDiskBytesPerTransfer: 1048576 AvgDiskBytesPerWrite: 0 AvgDiskQueueLength: 1 AvgDiskReadQueueLength: 1 AvgDisksecPerRead: 0 AvgDisksecPerTransfer: 0 AvgDisksecPerWrite: 0 AvgDiskWriteQueueLength: 0 CurrentDiskQueueLength: 2 DiskBytesPersec: 37756348 DiskReadBytesPersec: 37756348 DiskReadsPersec: 36 DiskTransfersPersec: 36 DiskWriteBytesPersec: 0 DiskWritesPersec: 0 Name: _Total PercentDiskReadTime: 55 PercentDiskTime: 55 PercentDiskWriteTime: 0 PercentIdleTime: 67 SplitIOPerSec: 0 |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ui, nun weiß ich garnicht was ich sagen soll, ausser vielen vielen dank.
Und dann gleich noch eine frage hinterher.... ist das diese unit, oder? ![]() Gruß und nochmals vielen dank |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Sieht brauchbar aus.
Ich teste es mal. |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Damit kann man irgendwie units erstellen. Genau hab ich das noch nicht kapiert.
![]() |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ich habe eben eine kleine Demo gemacht. Leider ist die abfrage viel viel zu langsam. Schade, vielleicht gibt es ja nochwas anderes.....
OS ist Win7 32 Bit |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Ich habe hier etwas Interessantes gefunden.
Man kann auch mehrere Instanzen starten, wenn man das Programm in mehrere Unterordner kopiert (wegen der INI-Config.) Man kann unter verschiedenen Objekten auswählen, was man sichtbar machen möchte. ![]() ![]() |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Das ist total nett das du hilfst. Aber leider komme ich meinem prob nicht näher. Ich möchte das ja selber programmieren. Um z.b. auch eine Remotefunktion einzubauen.
Das mit dem WMI klappt, aber es ist leider viel zu langsam. |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Zitat:
Ausserdem frag ich mich wofür das gut sein soll. Im Extremfall ist es ja so, das Windows einen Schreibauftrag bekommt und der erst einmal ein paar Sekunden durch das System irrt bevor die Daten auf die Platte geschrieben werden. Ebenso gibt es ja auch Programme die ihre Disk-Aktivitäten erst entfalten wenn nichts auf dem System los ist. Wenn Du Dir also Disk-Aktivität anzeigen läßt, könnte es sein, daß Du zu "höflich" reagierst und zu lange auf deine Chance wartest. Ansonsten empfehle ich Dir den nicht ganz einfachen Weg über die Performance Counter (siehe #8). Gruß K-H |
AW: Festplatten zugriff sichbar machen (LED im Tray)
Zitat:
|
AW: Festplattenzugriff sichtbar machen (LED im Tray)
Treiber schreiben ;-)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz