Hej.
Czy zna ktos moze funkcje, albo sposób na zdobycie numeru seryjnego jakiegos <ort>użądzenia </ort>(np karty graficznej, dysku twardego, karty sieciowej etc...)
pozdrawiam,
MiloszeS
Hej.
Czy zna ktos moze funkcje, albo sposób na zdobycie numeru seryjnego jakiegos <ort>użądzenia </ort>(np karty graficznej, dysku twardego, karty sieciowej etc...)
pozdrawiam,
MiloszeS
Rany, ale ja czasem żałuję że nie mam tych praw moderatora...
Pobieranie numeru dysku twardego pojawia się często na forum, numer MAC karty sieciowej jest w FAQ, coś o płycie głównej też jest w czeluściach archiwum. A numerów innych "użądzeń" nie widziałem...
Oki spoko.
Ale nie spotkalem Artykulu mowiacego jak zdobyc numer DYSKUtawrdego, a nie partycji. Potrzebuje numer do jakiegos urzadzenia ktore znajduje sie w wiekszosci standardowych domowych systemow komputerowych. CO nie zmienia sie tak szybko.... Wybacz ale nie znalazlem nic takiego na 4 programmers i google.
http://www.swissdelphicenter.com/en/showcode.php?id=57
3 minuty szukania :P ale nie wiem czy działa bo nie sprawdziałem :]
Wlasnie nie :/.
Na sieci jest duzo materialow mowiacych jak zdobyc numer partycji :/. Tak jak twoj link powyzej.. Sprawa wbrew pozorom nie jest prosta i jak do tej pory nie znalazlem rozwiazania.
Dla zainteresowanych.
Znalazlem taki kod umozliwiajacy odczytanie seriala biosu. Nestety jest "mala" wada takeigo rozwiazania- nie dziala pod win2000/XP- ochrona pamieci.
A oto kod:
function GetBiosInfoAsText(): string;
var
p, q: pchar;
begin
q := nil;
p := PChar(Ptr($FE000));
repeat
if q <> nil then begin
if not (p^ in [#10, #13, #32..#126, #169, #184]) then begin
if (p^ = #0) and (p - q >= 8) then begin
Result := Result + TrimRight(String(q)) + #13#10;
end;
q := nil;
end;
end else
if p^ in [#33..#126, #169, #184] then
q := p;
inc(p);
until p > PChar(Ptr($FFFFF));
Result := TrimRight(Result);
end;
To znowu ja.
Przedstawiam wyniki moich poszukiwan.
Znalazlem freewewareowy komponent do delphi (5 - 7), ktory umozliwia nam uzyskanie bardzo wielu informacji na temat systemu tj. data utworzenia BIOS, numer seryjny plyty gl, HDD oraz, wiele... wiele innycj bardzo przydatnych informacji.
Działa pod systemami:
MS Windows 9x
MS Windows ME
MS Windows NT 4.x
MS Windows 2000
MS Windows XP
MS Windows Server 2003
link do strony:
nazwa komponentu:
System Information Component
pozdrawiam,
MiloszeS
wbrew pozorom ten link do swissdelphi center nie jest taki w pełni zły... w komentarzach jest: http://www.swissdelphicenter.com/en/showcomment.php?id=57&detail=1345 ten kod, wykorzystujący SMART, który podaje numer DYSKU a nie partycji!
//żaden mod jeszcze tego orta nie zauważył?
// spokojnie spokojnie - ŁF
wbrew pozorom ten link do swissdelphi center nie jest taki w pełni zły... w komentarzach jest: http://www.swissdelphicenter.com/en/showcomment.php?id=57&detail=1345 ten kod, wykorzystujący SMART, który podaje numer DYSKU a nie partycji!
ale ten kod nie działa na Win 9x
wbrew pozorom ten link do swissdelphi center nie jest taki w pełni zły... w komentarzach jest: http://www.swissdelphicenter.com/en/showcomment.php?id=57&detail=1345 ten kod, wykorzystujący SMART, który podaje numer DYSKU a nie partycji!
ale ten kod nie działa na Win 9x
Jak nie działa :/ u mnie działa a mam 98 :|
Sprubujcie tego komponentu o ktorym napisalem
Wystarzcy 8 linijek by zdobyc serial dysku !!
przykladowa funkcja
function getSerialDisk () : string;
var
storage : TStorage;
begin
storage := TStorage.create;
storage.getinfo();
Result := storage.serial;
storage.free;
end;
a propoS's kodu podanego przez kogos wczesniej. Tam chyba ort!, ze trzeba przegrac jakis plik .vxd czy cos. Wiec sprubuj poszukac.
Z tego co pamietam- dzisiaj sprawdzalem trzeba przegrac jakis plik .vxd do katalogu windowsa i bedzie dzialal.
o Juz znalazlem ten fragment:
Windows 9x: SMARTVSD.VXD must be installed: just copy it from the
System folder (typically C:\WINDOWS\SYSTEM) to the System\IoSubsys
folder (typically C:\WINDOWS\SYSTEM\IOSUBSYS) and reboot.
chyba nie trzeba tlumaczyc.
Jak do labela wstawić info z tego komponentu, wyskakuje mi błąd : niekompatybilne typy: string i tstring.
TString czy TStrings?
Jak to drugie to zrób: ToCoChceszDacaleJestTypuTStrings.Text
Ten komponent jest zakręcony. Udało się zkompilować, ale w takim razie coś innego robie źle. Jak pobrać z pomocą tego komponentu adres IP.
@miloszes
komponent o którym mówiłeś naprawdę jest spoko ale u mnie podczas jego instalacji wyskakuje błąd:
[Fatal Error] File not found: 'MSI_GUI.pas'
nie wiesz może dlaczego tak się dzieje mam Delphi 7 i nie wiem co się dzieje.
Proszę o pomoc ;(
rzegrywać te pliki do folderu Bin
Hej.
Komponent jest zajkrecony- to fakt. Mnie zajelo ponad pol godziny zanim wszystko zaczelo dobrze chodzic. Tam jest plik readme- ktory warto dokladnie przeczytac. Dopiero jak zrobilem krok po korku jak tam pisze zaczelo poprawnie funkcjonowac.
Acha- wazna jest kolejnosc instalowania pakietow (sa dwa) z tego co pamietam jeden trzeba skompilowac a na drugim kliknac opcje instaluj (troche dziwne :).
MiloszeS
Zainstalowałem poprawnie ale w żaden sposób nie moge dojść jak pobierać przez niego dane. A z angielskiego jestem noga więc z readme mało się dowiem.
<ort>Sprubuj </ort>tego kodu co jest na samej gorze <ort>teh </ort>podstrony (przynajmniej u mnie).
Dopeiro zaczynam pisac w delphi wiec srk za terminologie.
Jesli potrzebujesz jakiejs tylko <ort>wybiorczje </ort>informacji (np numer seriala procesora) to robisz tak:
Tworzysz objekt typu TCPU;
```delphi Cpu := TCpu.create; ```"Kazesz" <ort>objektowi </ort><ort>porbac </ort>informacje
```delphi Cpu.getinfo(); ``` Pobierasz informacje od ort! ```delphi Serial := CPU.serial; ```Zwalniasz zasoby
```delphi CPU.free; ```Wiekszosc <ort>infoermacji </ort>pobiera sie w analogiczny sposob.
Sorki ale to jest pseudo kod. W tym momencie nie mam dostepu do DELPHI wiec, sorki jesli sa jakies wpadki :)
Acha nie zapomnij zadeklarowac zmiennych i dolaczyc odpowiednie pliki naglowkowe .
rzegrywać te pliki do folderu Bin
no dobra @nowy ale tych plików nie mam :(
Może ktoś komu udało się zainstalować ten komponenty MSIC napisał by dokładnie jak to zrobił. :)
Ja robie wszystko według pliku ReadMe.txt i dalej wywala mi błąd. :(
[???] POMOCY<<