איתור דרייבר כרטיס רשת
-
https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/devcon
devcon driverfiles ="wireless communication devices"
-
תודה אבל מעדיף בלי כלי חיצוני
זה לא אמור להיות מאוד מסובך (למרות שלא מצאתי בנתיים)
יש פקודהnetsh wlan show drivers
ועוד פקודה
dirverquery
אמור להיות דרך לשחק איתן ולאתר את הדרייבר (אולי על ידי הקובץ inf)
אחת הבעיות שיש לי עם הפקודות האלה, זה שאני רוצה שזה יהיה אויברסלי לכל המחשבים. והפקודת האלה מחזירות תוצאות לפי השפה. ומחשבים באנגלית או צרפתית או גרמנית, מחזירים תוצאות שונות.. -
הנה בC#
using System.Management; ... ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PnPSignedDriver"); foreach(ManagementObject obj in searcher.Get()) { // loop until you find the driver you're looking for (Hopefully you can distinguish this by the DeviceName, DriverName or FriendlyName) string version = obj.GetPropertyValue("DriverVersion").ToString(); }
לא יודע איך זה בשפה שאתה כותב בה...
אבל מ הסתם עם API של הווינדוס אתה יכול להגיע לזהעוד מקור (VB NET)
https://social.msdn.microsoft.com/Forums/vstudio/en-US/4373ba97-f6a7-41ae-89b3-9bcd1216f1bc/how-to-get-network-cardadapter-name?forum=vbgeneral -
בהמשך לכיוון ש@clickone נתן -
זה כיוון כללי, (א. אין לי כרטיס wifi במחשב לכן לא יכולתי למצוא בדיוק כל השאילתות. ב. אין לי מספיק ידע ב-WQL, תלמד יותר פה)- קודם תמצא את המזהה של ההתקן ע"י שאילתא:
SELECT DeviceID FROM Win32_PnPEntity WHERE PNPClass="<שם PNPCLASS עבור WIFI>"
- ואז תוכל לקבל את הקבצים המשוייכים ע"י שאילתא זו:
SELECT * FROM Win32_PNPSignedDriverCIMDataFile WHERE Antecedent = "\\<שם מחשב>+\ROOT\cimv2:Win32_PNPSignedDriver.DeviceID=<מזהה חומרה>"
עיין כאן, שיש powershell שעושה דבר דומה.
\\ (בעצם התחלתי בכיוון שונה:
- תוכל לקבל את הדרייבר ע"י שאילתא זו:
SELECT * FROM Win32_PnPSignedDriver WHERE DeviceID = "<מזהה שקיבלת משאילתא הקודמת>"
- ואז, השאילתא הזאת
נותן לך(אמור לתת לך אבל בינתיים לא מצאתי דרך להריץ את זה) את הקבצים ששייכים לדרייבר
ASSOCIATORS OF {Win32_PnPSignedDriver.DeviceID="<מזהה שקיבלת משאילתא הקודמת>"} WHERE AssocClass = CIM_DataFile
אבל זה לא עובד
)