ما هي حقوق الوصول الافتراضية لعملية بدأت مع Shellexecuteex؟
-
23-09-2019 - |
سؤال
أحتاج إلى إجراء عمليات معينة في عملية بدأت معها ShellExecuteEx
- مثل انتظار ذلك ، ومقابض التكرار ، والاستعلام وإعداد المعلومات وما إلى ذلك. الآن أتساءل عما إذا كان بإمكاني القيام بكل هذه الأشياء على hProcess
العضو الذي تم إرجاعه في SHELLEXECUTEINFO
الهيكل الذي مرره ShellExecuteEx
. هل يعرف أحد هذا؟
هل العملية التي تسمى ShellExecuteEx
لها حقوق مثل PROCESS_DUP_HANDLE
, SYNCHRONIZE
, PROCESS_SET_INFORMATION
, PROCESS_QUERY_INFORMATION
(وهلم جرا) بشكل افتراضي ، عند استخدام الإرجاع hProcess
?
المحلول
أظن أنه هو نفسه ما تحصل عليه من CreateProcess ، على الرغم من أن هذه الوثائق لا تقول (سأخامر Process_All_Access). في أي حال ، يمكنك دائمًا القيام بـ GetProcessId () و OpenProcess () لفتحه بأي وصول تحتاجه.
نصائح أخرى
نعم. الوقت الذي تحتاج إلى القلق بشأن حقوق الوصول هو إذا قمت بأي مهمة تؤدي إلى UAC ، فأنت بحاجة إلى تعيين ملف requestedExecutionLevel= 'highestAvailable'