Pagina1 van 1
Forum

Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!

Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.

Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.



Deel:
Meldingen
Alles wissen

[Opgelost] Lazarus - MacOS X - Hoe detecteer ik of mijn Mac een netwerkverbinding heeft?

2 Berichten
1 Gebruikers
0 Reactions
2,004 Bekeken
 Hans
(@hans)
Famed Member Admin
Deelgenomen: 12 jaar geleden
Berichten: 2927
Topic starter  

Ik heb een hele kleine functie geschreven die detecteert of jouw Mac een netwerk verbinding heeft waarbij het niet uitmaakt of dit nu Ethernet, WiFi, 3G, 4G, Bluetooth etc is.

Deze functie is afhankelijk van de aanwezigheid van een nameserver (DNS), wat onder normale omstandigheden het geval is.

De alternatieven die ik tot dusver gevonden had, werken met het pingen van Google.com (wat irrelevant is voor een netwerk welke geen Internet toegang heeft), en de Reachability functions (Cocoa) functies die moeilijk te implementeren zijn [in Lazarus Pascal].

Deze functie detecteert dus NIET of er Internet toegang is - alleen maar dat er een werken netwerk verbinding is.

De functie geeft TRUE terug als er een werkende verbinding is, en FALSE als er GEEN werkende verbinding is.

Je moet wel even de unit "Process" toevoegen aan de Uses clause.

function NetwerkGevonden:boolean;
var s:ansistring;
begin
  RunCommand('/usr/sbin/scutil',['--dns'],s);
  NetwerkGevonden:= pos('nameserver',s)>0;
end;     

   
BeantwoordenCiteren
 Hans
(@hans)
Famed Member Admin
Deelgenomen: 12 jaar geleden
Berichten: 2927
Topic starter  

Vergat ik nog even de Reachability functies link toe te voegen: developer.apple.com


   
BeantwoordenCiteren
Deel: