質問
ようにしている場合はありませめに特定の機能をアプリケーション内で.例えば、アプリシステムやユーザー設定を保存されているレジストリにだけ必要な上昇時のシステムの設定を変更する必要があり
残念ながらすべての情報をいくつだけ新規プロセスの高い特典をご利用いただけます。
解決
何が本当に必要なものは、店舗の設定アプリのデータフォルダにまとめた。
他のヒント
なめで機能又はその他の単一の工程では、高レベルのためのプロセスの属性。のように妊娠、プロセスのいずれか高い。が必要な場合は一部のコードにするとともに、高まを始めなければ別です。
ただし、実践できるおとしての機能のCOMオブジェクトを実行しまで上昇、間接的に高COMオブジェクトのようになります:
HRESULT
CreateElevatedComObject (HWND hwnd, REFGUID guid, REFIID iid, void **ppv)
{
WCHAR monikerName[1024];
WCHAR clsid[1024];
BIND_OPTS3 bo;
StringFromGUID2 (guid, clsid, sizeof (clsid) / 2);
swprintf_s (monikerName, sizeof (monikerName) / 2, L"Elevation:Administrator!new:%s", clsid);
memset (&bo, 0, sizeof (bo));
bo.cbStruct = sizeof (bo);
bo.hwnd = hwnd;
bo.dwClassContext = CLSCTX_LOCAL_SERVER;
// Prevent the GUI from being half-rendered when the UAC prompt "freezes" it
MSG paintMsg;
int MsgCounter = 5000; // Avoid endless processing of paint messages
while (PeekMessage (&paintMsg, hwnd, 0, 0, PM_REMOVE | PM_QS_PAINT) != 0 && --MsgCounter > 0)
{
DispatchMessage (&paintMsg);
}
return CoGetObject (monikerName, &bo, iid, ppv);
}
最高の記事からです:
http://www.codeproject.com/KB/vista-security/UAC__The_Definitive_Guide.aspx
このnitty砂の頂きましたかの裏が既存のmicrosoftの応用な参加をお待ちしており、UACの迅速なというので、少なくともらしいかをご用意しております。に対して動作するように...
注記に例示により管理してc++)
Windows SDK"クロスの技術サンプル"にて"UACDemo"アプリとしては、以下の内容が考えられるC#Windows Formsアプリが起動管理者プロセス事務を遂行することに対して必要とする標高(書面によ %programfiles%
).
この点を書き込み自分で可能です。私はこの拡張サンプルを利用します。純リモIPCコの間に通常のユーザーの過程で、私の上昇プロセスを可能として、高実行可能な汎用的かつ実践的に応じたコードに願います。
と思いAydsmanが、こちらです。の名前付きパイプを支援す。純3.5すべIPC機構との通信の高まります。