Próbowałem przetłumaczyć ten kod z VB do Delphi (służy do włączania / wyłączania - Automatycznie wykryj ustawienia):
- http://www.gwspikval.com/jooel/UDF/udf/83411.htm // przy okazji, jest też tam namiar na kod źródłowy w C.
Moja wiedz na temat VB jest zerowa, czego skutkiem jest ten kod:
function DecToHex(Num: integer) : string;
begin
DecToHex := Format('%x', [Num]);
end;
procedure SetIEAutoDetect(Enable: Boolean);
var
Registry: TRegistry;
Buf, pBuf: Integer;
Byte, pByte: String;
begin
Registry := TRegistry.Create;
Registry.RootKey := HKEY_CURRENT_USER;
if Registry.OpenKeyReadOnly('Software\Microsoft\Windows\CurrentVersion\Internet Settings') then
begin
Registry.ReadBinaryData('DefaultConnectionSettings', Buf, SizeOf(Buf));
Registry.CloseKey;
Byte := IntToStr(Buf);
Byte := Copy(Byte, 18, 1);
pBuf := StrToInt(Byte);
if Enable then
pBuf := pBuf or 8
else
pBuf := pBuf and 7;
pByte := DecToHex(pBuf);
Byte := IntToStr(Buf);
Byte := Copy(Byte, 1, 17) + pByte + Copy(Byte, 19, Length(Byte) - 18);
Registry.WriteBinaryData('DefaultConnectionSettings', Byte, SizeOf(Byte));
end;
end;
Wiem, że jest on niepoprawny ;]. Mam nadzieję, iż ktoś mi pomoże poprawić to i owo. A może ma ktoś swój sposób lepszy i mogłby tu zaprezentować. Z góry dziękuje za wszystkie odpowiedzi.
Pozdrawiam