-2
Windows上でアクティブなネットワークと接続されているネットワークの名前をDelphiのコードで探したいと思います。複数ある場合もあります。このスクリーンショットで現在のネットワークの名前を取得
のWindows 10に示す接続された一方、NETGEAR21から。 誰かがこれに答えることができれば幸いです。
Windows上でアクティブなネットワークと接続されているネットワークの名前をDelphiのコードで探したいと思います。複数ある場合もあります。このスクリーンショットで現在のネットワークの名前を取得
のWindows 10に示す接続された一方、NETGEAR21から。 誰かがこれに答えることができれば幸いです。
https://theroadtodelphi.com/2015/10/28/using-the-network-list-manager-nlm-api-from-delphi/で説明されているように、まずネットワークリストマネージャへのインターフェイスを作成して作業しています。これにより、必要なファイルNETWORKLIST_TLB.pasが作成されます。 最小実装は次のとおりです。
unit ListTypes;
interface
uses
ActiveX,
NETWORKLIST_TLB,
ComObj;
function SetUpAndGetConnections: String;
function GetConnections: string;
implementation
uses
SysUtils,
Windows;
function SetUpAndGetConnections: String;
begin
CoInitialize(nil);
try
Result := GetConnections;
finally
CoUninitialize;
end;
end;
function GetConnections: String;
var
NetworkListManager: INetworkListManager;
EnumNetworkConnections: IEnumNetworkConnections;
NetworkConnection : INetworkConnection;
pceltFetched: ULONG;
begin
NetworkListManager := CoNetworkListManager.Create;
EnumNetworkConnections := NetworkListManager.GetNetworkConnections();
Result := '';
while true do
begin
EnumNetworkConnections.Next(1, NetworkConnection, pceltFetched);
if (pceltFetched>0) then
Result := Result + NetworkConnection.GetNetwork.GetName + #13#10
else
Break;
end;
end;
end.
複数の可能性があります。あなたはどれが欲しいですか。 –
さて、私は質問で明確にします。私はリストが欲しい。多くの場合、1つのネットワークに過ぎません。しかし、あなたは正しいことが多いかもしれません。 –
何を試しましたか? –