السلام عليكم ورحمة الله وبركاته
الموضوع هو كالتالي :-
عند عمل مشاركه لطابعه علي الشبكه وعند طباعه جهاز ما علي الشبكه باستخدام هذه الطابعه فإن بيانات المستند المطبوع والظاهر في قائمة انتظار الطباعه يظهر به البيانات التاليه
1- اسم المستند document name
2- الحالة status
3-مالك المستند "owner"
وبيانات اخري
المهم
ان عند الطباعه علي هذه الطابعه من خلال جهاز متصل بهذه الطابعه موجود علي الشبكه فإن بيانات " مالك المستند owner " تسجل "guest "
اريد ان اعرف ip الجهاز الذي نفذ عملية الطباعه بإستخدام هذه الطابعه
انا عملت برنامج يقوم بمعرفة كافة البيانات السابقه ولكن لا اعرف كيفية معرفة ال ip
StringCollection printJobCollection = new StringCollection();
string searchQuery = "SELECT * FROM Win32_PrintJob";
ManagementObjectSearcher searchPrintJobs = new ManagementObjectSearcher(searchQuery);
ManagementObjectCollection prntJobCollection = searchPrintJobs.Get();
foreach (ManagementObject prntJob in prntJobCollection)
{
String jobName = prntJob.Properties["Name"].Value.ToString();
String jobOwner = prntJob.Properties["Owner"].Value.ToString();
char[] splitArr = new char[1];
splitArr[0] = Convert.ToChar(",");
string prnName = jobName.Split(splitArr)[0];
string documentName = prntJob.Properties["Document"].Value.ToString();
if (String.Compare(prnName, printerName, true) == 0)
{
printJobCollection.Add(documentName);
MessageBox.Show(prnName);
MessageBox.Show(jobOwner);
}
}