Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
23 / 20 / 1
Регистрация: 15.06.2018
Сообщений: 432

Узнать под каким пользователем сейчас запущен ПК

07.12.2024, 20:26. Показов 1016. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, как узнать под каким пользователем сейчас запущен пк, а не программа. Т.к у меня программа запускается от имени системы и к примеру если я запускаю powershell с аргументом get-appxpackage | ft name он мне выдаст список программ для учетной записи Система, а мне нужно чтобы он выдавал для пользователя под которым запущена ос
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.12.2024, 20:26
Ответы с готовыми решениями:

PHP + IIS как в такой конфигурации узнать, под каким именем сейчас пользователь лазящий по сайту?
вопрос первый как в такой конфигурации узнать, под каким именем сейчас пользователь лазящий по сайту??? а то вроде PHP_AUTH_USER,...

Каким пользователем запущен процесс?
Мне нужно получить любую уникальную информацию о пользователе: у меня есть имя процесса, который только что запустили и я хочу проверить,...

По каким косвенным признакам можно узнать запущен ли на сервере memcashed - ?
сабж доступа к консоли сервера нет.

7
Эксперт .NET
 Аватар для Wolfdp
3789 / 1766 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
07.12.2024, 20:56
Цитата Сообщение от pafka1997 Посмотреть сообщение
как узнать под каким пользователем сейчас запущен пк, а не программа
Поставить фотокамеру и подключить к кнопке пуск.

Если серьезно, нет такого понятия как "пользователь запустивший ПК". Возможно вы путаете с запущенной сессией пользователя. Но их тоже может быть много, а серверные редакции винды ещё и позволяют работать им одновременно.

Так что скорее всего вы что-то делаете не так. Я так понимаю есть фоновый сервис, в котором нужно выполнить команду для конкретного пользователя. Если информация поступает в виде команды из вне -- нужно на этом этапе определять кто передал или для кого запускать. Если это задача по таймеру -- нужно пересмотреть ТЗ.
0
23 / 20 / 1
Регистрация: 15.06.2018
Сообщений: 432
07.12.2024, 21:07  [ТС]
Wolfdp, в общем мне нужно получить список get-appxpackage делаю я это так
C#
1
2
3
4
5
6
7
8
9
10
Process pra = Process.Start(new ProcessStartInfo
{
    FileName = "powershell",
    Arguments = "get-appxpackage | ft name",
    UseShellExecute = false,
    CreateNoWindow = true,
    RedirectStandardOutput = true
});
 
string aaa = pra.StandardOutput.ReadToEnd();
Программа у меня запускается от имени системы и я получаю такой список

Кликните здесь для просмотра всего текста
Name
----
MicrosoftWindows.Client.LKG
Microsoft.VCLibs.140.00
Microsoft.Windows.OOBENetworkCaptivePort al
Microsoft.Windows.OOBENetworkConnectionF low
Microsoft.PowerAutomateDesktop
Microsoft.WindowsStore
Microsoft.Getstarted
1527c705-839a-4832-9118-54d4Bd6a0c89
c5e2524a-ea46-4f67-841f-6a9465d9d515
E2A4F912-2574-4A75-9BB0-0D023378592B
F46D4000-FD22-4DB4-AC8E-4E1DDDE828FE
Microsoft.AAD.BrokerPlugin
Microsoft.AccountsControl
Microsoft.AsyncTextService
Microsoft.BioEnrollment
Microsoft.UI.Xaml.CBS
Microsoft.CredDialogHost
Microsoft.LockApp
Microsoft.MicrosoftEdgeDevToolsClient
Microsoft.Win32WebViewHost
Microsoft.Windows.Apprep.ChxApp
Microsoft.Windows.AssignedAccessLockApp
Microsoft.Windows.CapturePicker
Microsoft.Windows.CloudExperienceHost
Microsoft.Windows.ContentDeliveryManager
Microsoft.Windows.ParentalControls
Microsoft.Windows.PeopleExperienceHost
Microsoft.Windows.PinningConfirmationDia log
Microsoft.Windows.PrintQueueActionCenter
Microsoft.Windows.SecureAssessmentBrowse r
Microsoft.Windows.ShellExperienceHost
Microsoft.Windows.StartMenuExperienceHos t
Microsoft.Windows.XGpuEjectDialog
Microsoft.XboxGameCallableUI
MicrosoftWindows.Client.AIX
MicrosoftWindows.Client.FileExp
MicrosoftWindows.Client.OOBE
MicrosoftWindows.UndockedDevKit
Windows.CBSPreview
windows.immersivecontrolpanel
Windows.PrintDialog
Microsoft.VCLibs.140.00.UWPDesktop
Microsoft.WindowsAppRuntime.1.4
NVIDIACorp.NVIDIAControlPanel
Microsoft.Windows.AugLoop.CBS
Microsoft.WindowsAppRuntime.CBS.1.6
Microsoft.WindowsAppRuntime.CBS
MicrosoftWindows.Client.CBS
MicrosoftWindows.Client.Core
MicrosoftWindows.Client.Photon
MicrosoftWindows.LKG.AccountsService
MicrosoftWindows.LKG.DesktopSpotlight
MicrosoftWindows.LKG.IrisService
MicrosoftWindows.LKG.RulesEngine
MicrosoftWindows.LKG.SpeechRuntime
MicrosoftWindows.LKG.TwinSxS
Microsoft.XboxIdentityProvider


А если я запускаю программу от имени администратора "То есть от своей учетки"
получаю список такой

Кликните здесь для просмотра всего текста
Name
----
Microsoft.Windows.OOBENetworkConnectionF low
Microsoft.Windows.OOBENetworkCaptivePort al
Microsoft.BioEnrollment
Microsoft.AAD.BrokerPlugin
Microsoft.NET.Native.Framework.2.2
Microsoft.NET.Native.Framework.2.2
Microsoft.NET.Native.Runtime.2.2
Microsoft.NET.Native.Runtime.2.2
Microsoft.VCLibs.140.00
Microsoft.VCLibs.140.00
Microsoft.MicrosoftEdge.Stable
Microsoft.UI.Xaml.2.5
Microsoft.UI.Xaml.2.5
Microsoft.UI.Xaml.2.8
Microsoft.UI.Xaml.2.8
Microsoft.VCLibs.140.00.UWPDesktop
Microsoft.VCLibs.140.00.UWPDesktop
Windows.CBSPreview
Microsoft.Windows.CapturePicker
Microsoft.CredDialogHost
1527c705-839a-4832-9118-54d4Bd6a0c89
E2A4F912-2574-4A75-9BB0-0D023378592B
NVIDIACorp.NVIDIAControlPanel
Microsoft.OutlookForWindows
Microsoft.VP9VideoExtensions
Microsoft.WebMediaExtensions
Microsoft.WebpImageExtension
Microsoft.WindowsAppRuntime.1.4
Microsoft.WindowsAppRuntime.1.4
Microsoft.XboxGameOverlay
Microsoft.Xbox.TCUI
Microsoft.Services.Store.Engagement
Microsoft.Services.Store.Engagement
Microsoft.UI.Xaml.2.7
Microsoft.UI.Xaml.2.7
Microsoft.WindowsAppRuntime.1.3
Microsoft.WindowsAppRuntime.1.3
Microsoft.WindowsAppRuntime.1.5
Microsoft.WindowsStore
Microsoft.HEVCVideoExtension
Microsoft.Windows.Photos
Microsoft.PowerAutomateDesktop
Microsoft.WidgetsPlatformRuntime
c5e2524a-ea46-4f67-841f-6a9465d9d515
F46D4000-FD22-4DB4-AC8E-4E1DDDE828FE
Microsoft.AccountsControl
Microsoft.AsyncTextService
Microsoft.UI.Xaml.CBS
Microsoft.LockApp
Microsoft.MicrosoftEdgeDevToolsClient
Microsoft.Win32WebViewHost
Microsoft.Windows.Apprep.ChxApp
Microsoft.Windows.AssignedAccessLockApp
Microsoft.Windows.CloudExperienceHost
Microsoft.Windows.ContentDeliveryManager
Microsoft.Windows.ParentalControls
Microsoft.Windows.PeopleExperienceHost
Microsoft.Windows.PinningConfirmationDia log
Microsoft.Windows.PrintQueueActionCenter
Microsoft.Windows.SecureAssessmentBrowse r
Microsoft.Windows.ShellExperienceHost
Microsoft.Windows.StartMenuExperienceHos t
Microsoft.Windows.XGpuEjectDialog
Microsoft.XboxGameCallableUI
MicrosoftWindows.Client.FileExp
MicrosoftWindows.Client.OOBE
MicrosoftWindows.UndockedDevKit
windows.immersivecontrolpanel
Windows.PrintDialog
Microsoft.WindowsAppRuntime.1.5
Microsoft.WindowsAppRuntime.1.5
MicrosoftWindows.Client.WebExperience
AppUp.IntelGraphicsExperience
Microsoft.Windows.NarratorQuickStart
Microsoft.ECApp
Microsoft.MicrosoftStickyNotes
Microsoft.HEIFImageExtension
Microsoft.RawImageExtension
Microsoft.Windows.DevHome
Microsoft.WindowsMaps
Microsoft.Todos
MSTeams
Microsoft.XboxSpeechToTextOverlay
Microsoft.SecHealthUI
Microsoft.BingNews
Microsoft.Windows.AugLoop.CBS
Microsoft.WindowsAppRuntime.CBS.1.6
Microsoft.WindowsAppRuntime.CBS
MicrosoftWindows.Client.CBS
MicrosoftWindows.Client.Core
MicrosoftWindows.Client.Photon
MicrosoftWindows.LKG.AccountsService
MicrosoftWindows.LKG.DesktopSpotlight
MicrosoftWindows.LKG.IrisService
MicrosoftWindows.LKG.RulesEngine
MicrosoftWindows.LKG.SpeechRuntime
MicrosoftWindows.LKG.TwinSxS
Clipchamp.Clipchamp
Microsoft.WindowsTerminal
Microsoft.LanguageExperiencePacken-US
Microsoft.BingWeather
Microsoft.AVCEncoderVideoExtension
Microsoft.WindowsFeedbackHub
Microsoft.WindowsCalculator
Microsoft.DesktopAppInstaller
Microsoft.LanguageExperiencePackru-RU
Microsoft.MPEG2VideoExtension
Microsoft.People
Microsoft.AV1VideoExtension
Microsoft.WindowsCamera
microsoft.windowscommunicationsapps
Microsoft.BingSearch
Microsoft.ApplicationCompatibilityEnhanc ements
Microsoft.MicrosoftOfficeHub
Microsoft.ScreenSketch
Microsoft.GetHelp
Microsoft.WindowsAlarms
Microsoft.GamingApp
Microsoft.Winget.Source
Microsoft.WindowsSoundRecorder
Microsoft.ZuneVideo
Microsoft.XboxGamingOverlay
Microsoft.StorePurchaseApp
MicrosoftWindows.CrossDevice
Microsoft.WindowsNotepad
Microsoft.ZuneMusic
Microsoft.Paint
Microsoft.YourPhone


Так как реализовать чтобы получить такой же список если программа запущена от имени системы?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18242 / 14156 / 5366
Регистрация: 17.03.2014
Сообщений: 28,846
Записей в блоге: 1
07.12.2024, 23:36
Цитата Сообщение от pafka1997 Посмотреть сообщение
у меня программа запускается от имени системы
Как именно выполняется запуск?

Цитата Сообщение от pafka1997 Посмотреть сообщение
мне нужно чтобы он выдавал для пользователя под которым запущена ос
Имя пользователя вам врядли тут поможет. Скорее вам требуется запустить приложение от имени этого пользователя. Учитывая то что написал Wolfdp, но мы будем исходить что у вас домашний компьютер и сессия всегда одна. В таком случае вам возможно поможет трюк с запуском приложения через Проводник, описанный здесь.
0
Эксперт .NET
 Аватар для Wolfdp
3789 / 1766 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
08.12.2024, 01:24
Цитата Сообщение от OwenGlendower Посмотреть сообщение
но мы будем исходить что у вас домашний компьютер и сессия всегда одна.
Поправочка -- активная сессия (или хз как её правильно назвать). Технически если выполнить вход одним юзером, потом перелогиниться -- то вроде как у нас две сессии. Да, по тому же RDP можно одновременно сидеть только одному на не сервеной редакции. Но тот же onedrive например должен запуститься для обоих и начать отслеживать изменения с облака. Ну и нужно понимать что можно запустить ПК без входа в систему, а если у ТСа это сервис стартующий при старте системы (что не факт) -- то и искать нечего будет.

Цитата Сообщение от pafka1997 Посмотреть сообщение
в общем мне нужно получить список get-appxpackage
Не уверен что правильно подскажу, но в теории список устанволенных пакетов можно глянуть так
C#
1
2
3
4
5
6
7
8
9
10
11
12
using System;
using Windows.Management.Deployment;
 
 
var packageManager = new PackageManager();
{
    var packages = packageManager.FindPackages() ?? [];
    foreach (var package in packages)
    {
        Console.WriteLine(package.DisplayName);
    }
}
1. Требует прав админа
2. работает только на .net core 6+ и windows 10 версии 18хх

Для более старого net/оси придется качать отдельную либу. Там ещё какие-то ньюансы с десктопом, но я сильно не копал.

Если код не поможет -- можно рассмотреть вариант запустить в том же powershell скрипт, который сначала вычитает всех юзеров, а после вытянет для каждого пакеты и смержит списки.
0
23 / 20 / 1
Регистрация: 15.06.2018
Сообщений: 432
08.12.2024, 03:28  [ТС]
Wolfdp, решил вопрос по-другому. Запускаю программу от пользователя который залогинился в ос и если нужны права системы для какой-либо операции перезапускаю прогу от имени системы выполняю действие и запускаю обратно от пользователя ос. Так гораздо проще чем когда прога работает от имени системы ибо процентов 50 функционала начинает работать не правильно
0
Эксперт .NET
 Аватар для Wolfdp
3789 / 1766 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
08.12.2024, 03:54
Цитата Сообщение от pafka1997 Посмотреть сообщение
Запускаю программу от пользователя который залогинился в ос и если нужны права системы для какой-либо операции перезапускаю прогу от имени системы выполняю действие и запускаю обратно от пользователя ос.
Вроде как выдавать дополнительные привилегии можно отдельным потокам, без перезапуска программы. Причем по идеи это должно работать именно как выдача прав, а не смена пользователя.

Цитата Сообщение от pafka1997 Посмотреть сообщение
Так гораздо проще чем когда прога работает от имени системы ибо процентов 50 функционала начинает работать не правильно
Если у вас софт подразумевает не фоновый сервис без конкретной привязки к пользователю, а наоборот требует взаимодействия с учетной записью -- то запускать его от лица другой учетки действительно не стоит.
0
-26 / 4 / 0
Регистрация: 26.09.2024
Сообщений: 128
10.12.2024, 10:46
pafka1997, наверное надо с начало узнать имя пользователя, а потом уже от его имени выполнить powershell
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.12.2024, 10:46
Помогаю со студенческими работами здесь

Как узнать, открыта ли форма каким-то пользователем?
Добрый день! Ситуация такова: в сетевой базе 1С 8.1 (сервер 1С 8.1) есть обработка, которая по таймеру загружает заказы из...

Узнать каким пользователем открыт файл на сетевом диске
Всем привет! Подскажите пожалуйста, как можно(и возможно ли вообще) узнать каким пользователем в сети открыт тот или иной файл,...

Узнать, каким пользователем открыт тот или иной файл
Добрый день, уважаемые форумчане! Вопрос стоит такой: Все компы в доменной сети. Возможно ли как то узнать по средствам powershell имя...

Определить под каким пользователем работает Юзер
Добрый день. Существует следующая задача: Есть список компов домена допустим в файле *.txt. Нудно запустить скрипт на них и узнать под...

Я отключил Администратора и теперь не могу зайти ни под каким пользователем
Я отключил Администратора и теперь немогу зайти не под каим пользователем непускает практически ни в одну папку . А включить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru