AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte CORETEMP mit Shared Memory
Thema durchsuchen
Ansicht
Themen-Optionen

CORETEMP mit Shared Memory

Ein Thema von hathor · begonnen am 26. Mai 2008 · letzter Beitrag vom 13. Sep 2014
 
bluescreen25

Registriert seit: 27. Nov 2005
Ort: Geldern
229 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: CORETEMP mit Shared Memory

  Alt 7. Jun 2009, 00:08
Habe mich mal an der aktuellen dll versucht. Wenn ich das richtig verstanden habe, benötigt man nicht mehr das starten der CoreTemp.exe

Ich komme zur Zeit nicht weiter, beim Aufruf von
if GetCoreInfo(NewCoreTempInfo)... bekomme ich false zurück. Anscheinend ist meine Übergabe der Daten fehlerhaft...

Jemand eine Idee ?

Hier der Link zur C++ Info: Core Temp mit Dll



Delphi-Quellcode:
unit CoreTempUnit;

interface

uses
  Windows;


type
  TCTInfo = record
    uiLoad : array [0..255] of Cardinal; //256 = 1024 bytes
    uiTjMax : array [0..127] of Cardinal; //128 = 512 bytes
    uiCoreCnt :Cardinal; // 4 bytes
    uiCPUCnt :Cardinal; // 4 bytes
    fTemp : array [0..255] of single; //256 * 4 bytes = 1024 bytes
    fVID : single; //real 4 bytes
    fCPUSpeed : single; //real 4 bytes
    fFSBSpeed : single; //real 4 bytes
    fMultiplier : single; //real 4 bytes
    sCPUName : array [0..99] of Char; //String[100]; = 100 bytes
    ucFahrenheit : Boolean; // 1 byte
    ucDeltaToTjMax: Boolean; // 1 byte
  end; // 2686 bytes

 PCTInfo = ^TCTInfo;
 
 TFNGetCoreInfo = function(Data: PCTInfo):boolean; stdcall;


function LoadCoreTempDLL:Boolean;
function UnloadCoreTempDLL:Boolean;

var
  NewCoreTempInfo : PCTInfo;
  GetCoreInfo : TFNGetCoreInfo = nil;
  CoreLib : HMODULE;


implementation


function LoadCoreTempDLL:Boolean;
begin
  result := false;
  Corelib := LoadLibrary('GetCoreTempInfo.dll');
  if Corelib <> 0 then
  begin
    @GetCoreInfo := GetProcAddress(Corelib, 'fnGetCoreTempInfoAlt');
    result := true;
  end;
end;


function UnloadCoreTempDLL:Boolean;
begin
  if CoreLib <> 0 then
  begin
    FreeLibrary(CoreLib);
    result := True;
  end else
    result := False;
end;
Gruß, bluescreen25
...und ich dachte, Delphi ist ein Programmgenerator mit nur einem Button......tzzz
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 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