4

管理者権限で Windows 7 コマンド ラインから次のスクリプトを開始しています。

import win32com.client
import time
import SendKeys
import os
from ctypes import *

shell = win32com.client.Dispatch("WScript.Shell")

os.startfile("C:\...exe")

また、[プロパティ] > [互換性] > [特権レベル] の下で、「このプログラムを管理者として実行する」機能を python.exe に割り当てました。これは何も変わりませんでした。

この方法で開いたときのプログラムの動作は、画面をダブルクリックして開いたときの動作とは異なります。ここで重要な部分が欠けていますか?この方法で呼び出されたプロセスは、管理者権限で開始されたかのように実行されませんか?

事前にご協力いただきありがとうございます。

乾杯 -

パット

4

2 に答える 2

2

Vista または Windows 7 にはアクセスできませんが、コマンドは使用できるはずです。runas

import subprocess
subprocess.call(['runas', '/user:Administrator', 'C:/my_program.exe'])
于 2011-01-10T11:43:38.823 に答える
0

わかりました...問題が何であるかを理解しました。私の最初の疑いに反して、実際には許可とは何の関係もありませんでした。ごめんなさい!

アプリケーションが正しく動作しなかった理由は、Python スクリプトが別のディレクトリに配置され、呼び出されたためです。そのため、アプリケーションの依存関係の一部が正しく参照されず、適切に実行するために必要なファイルの一部が見つかりませんでした。これを修正する 1 つの方法は、呼び出されたアプリケーションと同じディレクトリに Python スクリプトを移動することでした。

問題のように思われたものの誤解を招く最初の解釈について、もう一度申し訳ありません。

于 2011-01-10T12:05:23.260 に答える