**HMN-win32: Windows Net API 用パッケージ**
ヘルプ
ddffsd Parts of this document were translated by machine (Gpt3.5)
Backwards compatible to node6.14.2 but the precompiled version is only supported to node8 and above (because node6 has no asynchronous syntactic sugar), for node6 please compile to node6.14.2 with esbuld yourself
HMN は HMC-WIN32 のサブブランチです。HMC とは異なり、HMN はネットワーク関連の API のみを処理します。
プログラミング ヘルプ (中国語) ヘルプ (英語) CPP (ソース)
インストール
電話のかけ方
let HMN = require ( "hmn-win32" ) ;
console . log ( "net:getConnectNetList=>" , hmn . getConnectNetList ( ) [ 0 ] )
TypeScript で、
import HMC = require ( "hmn-win32" ) ;
機能の概要
API中間層
- 参照変換
- boolブール値の内容を安全な bool 型 Boolean に変換します。
- 文字列はテキスト/疑似テキストコンテンツを安全なテキストに変換します
- int は、数値/疑似数値の内容を安全な int 数値に変換します。
- HKEYすべてのレジストリ内の HKEY オブジェクト
- スリープ非同期ブロック
- HMN.node に直接接続するネイティブな方法 (推奨されません)
API
- ipv4 はローカル エリア ネットワークの IP (v4) を取得します
- ipローカル エリア ネットワーク (アダプター、v4、v6) の IP を取得します。
- **adapterIP **ローカル エリア ネットワークの IP を取得します (アダプター、v4、v6)
- adapterIPAsync はローカル エリア ネットワーク (アダプター、v4、v6) の IP を取得します[非同期 async]
- public_ip はローカルのパブリック ネットワーク IP を取得します[非同期 async]
- getNetParams はホストのネットワーク情報を取得します
- getNetParamsAsync はホスト ネットワーク情報を取得します
- freePort はTCP の空きポート (サービス) を取得します[非同期 async]
- freePortTCP は空き TCP ポートを取得します[非同期 async]
- freePortUDP は空き udp ポートを取得します[非同期 async]
- hasPortUDP は、この UDP ポートが空いているかどうかを判断します[非同期 async]
- hasPortTCP は、この TCP ポートがアイドル状態であるかどうかを判断します[非同期 async]
- getSystemProxyServerシステム プロキシ リンクを取得します (システム プロキシが有効な場合のみ)
- getSystemProxyPacシステム プロキシ PAC スクリプト リンクを取得します
- getDomainIPaddress はデフォルトの DNS (ネットワーク) からドメイン名ホスト IP を解決します。
- getDomainIPaddressAsync はデフォルトの DNS (ネットワーク) からドメイン名ホスト IP を解決します[非同期 async]
- getHostsPath はホストファイルのパスを取得します
- getTCPv6PortProcessIDこのポートがどのプロセスによって占有されているかを取得します
- getUDPv6PortProcessIDこのポートがどのプロセスによって占有されているかを取得します
- getUDPv4PortProcessIDこのポートがどのプロセスによって占有されているかを取得します
- getTCPv4PortProcessIDこのポートがどのプロセスによって占有されているかを取得します
- getTCPv6PortProcessIDAsyncこのポートが占有されているプロセスを取得する[非同期 async]
- getUDPv6PortProcessIDAsyncこのポートが占有されているプロセスを取得する[非同期 async]
- getUDPv4PortProcessIDAsyncこのポートが占有されているプロセスを取得する[非同期 async]
- getTCPv4PortProcessIDAsyncこのポートが占有されているプロセスを取得する[非同期 async]
- getConnectNetList は、このコンピューターのポート ipv4 および ipv6 の TCP および UDP ポート情報を列挙します。
- getConnectNetListAsync は、このコンピューターのポート ipv4 および ipv6 の TCP および UDP ポート情報を列挙します[非同期 async]
- killProcess はpid プロセスを終了します (低い権限、高い権限で強制終了する必要がある場合は、hmc-win32 を使用してください)
- スリープ同期のブロック (プロセス)
- スリープ非同期ブロック(プロセス)
- PortWatchdog はポートの変更を検出し、ポートが閉じているか有効になっている場合はコールバックを開始します。
- getProcessidFilePath はプロセスの実行可能ファイルの場所を取得します
- getProcessidFilePathAsync はプロセスの実行可能ファイルの場所を取得します[非同期 async]
- isAdmin は、現在のソフトウェアに管理者権限があるかどうかを判断します。
再構築
HMC のすべての API は winapi + nodeapi を使用して実装されているため、再コンパイルする必要はありません (node6.14.2 は、node8 以降の環境で実行でき、ソース コードを変更する必要がある場合は、esbuld を使用して独自にコンパイルする必要があります)。コンパイルには、 node-gyp rebuildを使用してください。これには、特定の C/C++ 基盤があり、コンパイル ツールとして node-gyp を使用する必要があります。使用する必要があるツールは次のとおりです。
- ノード-gyp
- Visual Studio 2019 (または他のバージョン)
リスク通知
各機能モジュールは、プロセスがクラッシュすることなく 1,000 回以上呼び出されます。
API は js を通じて厳密にトランスコードされており、ネイティブを呼び出す場合にのみ必要です。ただし、C++ 言語と C 言語は両方とも厳密に型指定されるため、型を厳密に渡すには typeScript を厳密に使用する必要があります。
疲労テストは実施されていますが、予期しないプロセスがクラッシュする可能性があるため、子プロセスの下で実行することをお勧めします。
C++ のワイルド ポインタ、NULL ポインタ、メモリ オーバーフロー、参照エラー、型エラーなどはすべてプロセスにとって致命的であるため、新しい関数を作成するときは、継続的にシミュレーション疲労テストを実施する必要があります。