AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Das Handle ist ungültig

Ein Thema von EWeiss · begonnen am 2. Mai 2018 · letzter Beitrag vom 6. Mai 2018
 
EWeiss
(Gast)

n/a Beiträge
 
#31

AW: Das Handle ist ungültig

  Alt 6. Mai 2018, 19:47
Jetzt habe ich verstanden.. Warum schwer machen wenn es auch einfach geht.

Delphi-Quellcode:
procedure TAudioVolume.LoadIconPathfromResource(IconPath: PWideChar);
var
  Module: HModule;
  Filename: string;
  StrID: string;
  ID: DWORD;
  lpDest: PWideChar;
begin

  lpDest := nil;
  // Remove First @ Letter
  Filename := MidStr(IconPath, 2, Length(IconPath));
  // Extract ID
  StrID := MidStr(Filename, Length(Filename) - 2, 4);
  ID := StrToInt(StrID);
  // Remove ID from Path
  Filename := LeftStr(Filename, Length(Filename) - 5);

  ExpandEnvironmentStrings(PWideChar(Filename), lpDest, Length(Filename));

  if Assigned(lpDest) then
  begin
    // Load the Lib
    Module := LoadLibraryExW(lpDest, 0, LOAD_LIBRARY_AS_DATAFILE);
    // check for error
    if Module <> INVALID_HANDLE_VALUE then
    begin
      Icon := TIcon.Create;
      Icon.Handle := LoadIcon(Module, MakeIntResource(ID));
      if Module <> 0 then
        FreeLibrary(Module);
    end;
  end;
end;
Kann hier den Filename "StrID" noch splitten damit falls die ID mal <> 3 sein sollte es immer noch funktioniert.

gruss

Geändert von EWeiss ( 6. Mai 2018 um 20:05 Uhr)
  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 07:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz