hi,
super habe jetzt einiges rausgefunden, und klappt auch so wie es soll, nun habe ich aber wieder ein problem und zwar bei PowerWriteFriendlyName Function
link
bei
__in UCHAR *Buffer,
__in DWORD BufferSize
Buffersize ist eigentlich klar
aber was muss ich bei Buffer übergeben ich bin der meinung entweder PWideString oder PWideChar
Delphi-Quellcode:
{$EXTERNALSYM PowerWriteFriendlyName}
function PowerWriteFriendlyName(RootPowerKey: HKEY;
const SchemeGuid: PGUID;
const SubGroupOfPowerSettingGuid: PGUID;
const PowerSettingGuid: PGUID;
Buffer: PUChar; BufferSize: PDWORD):
DWORD;
stdcall;
external PWR_PROF;
function TForm1.setNameToPowerScheme(
guid:TGUID; fname: WideString ):
string;
var
res, size: DWORD;
pfname: PWideChar;
begin
size := 512;
StringToWideChar(fname, Pfname, size);
GetMem(pfname, size);
//PowerWriteFriendlyName(0, @guid, nil, nil, Pointer(fname), @size);
res := PowerWriteFriendlyName(0, @
guid,
nil,
nil, Pointer(pfname), @size);
if res = ERROR_SUCCESS
then begin
result := '
Name geändert';
end
else
result := '
fehler';
FreeMem(pfname);
end;
ich weiß das die Funktion noch etwas unaufgeräumt aussieht aber ich habe vieles getestet
Hoffe mir kann einer Helfen
gruss olli