البرمجة
كيفية الحصول على اسم المالك بدون اسم الجهاز في C#
11/03/2024آخر تحديث: 11/03/2024
3 دقيقة واحدة
لتحقيق ما تريده، يمكنك استخدام الكود التالي للحصول على اسم المستخدم (owner) بدون اسم الجهاز في نهاية الاسم:
csharpstring user = File.GetAccessControl(textBox1.Text).GetOwner(typeof(NTAccount)).Value;
string fileName = $"{user}.{DateTime.Now.ToString("dd-MM-yyyy")}.JPG";
في هذا الكود، سيتم استخدام Value
بدلاً من ToString()
للحصول على اسم المستخدم بدون اسم الجهاز. ثم يتم استخدام تاريخ اليوم لإنشاء اسم الملف المطلوب.
مقالات ذات صلة
-
حذف العناصر في C# ListBox15/03/2024
-
تعلم إنشاء مصفوفات في C#14/03/2024
-
تقنية فحص نوع الكائن في لغة C#21/02/2024
المزيد من المعلومات
لتحقيق هذا الهدف، يمكنك استخدام دالة GetOwner
مع FileSecurity
و SecurityIdentifier
للحصول على اسم المالك (owner) بدون اسم الجهاز. هذا مثال بسيط يوضح كيفية القيام بذلك:
csharpusing System;
using System.IO;
using System.Security.AccessControl;
using System.Security.Principal;
class Program
{
static void Main()
{
string folderPath = @"C:\path\to\your\folder";
DirectoryInfo directoryInfo = new DirectoryInfo(folderPath);
DirectorySecurity directorySecurity = directoryInfo.GetAccessControl();
SecurityIdentifier owner = directorySecurity.GetOwner(typeof(SecurityIdentifier)) as SecurityIdentifier;
// Get the owner's name
NTAccount ntAccount = owner.Translate(typeof(NTAccount)) as NTAccount;
string ownerName = ntAccount.Value;
// Use the owner's name to create the file name
string fileName = $"{ownerName}.{DateTime.Now.ToString("dd-MM-yyyy")}.JPG";
Console.WriteLine(fileName);
}
}
تأكد من تعديل folderPath
ليتماشى مع المسار الخاص بالمجلد الذي تريد البحث فيه عن الملفات.