web-dev-qa-db-ja.com

pywin322.7のインストールと実行中にエラーが発生しました

インストール後にいくつかのエラーが発生します:

pywin32-217.win32-py2.7

最近、ArcGISを10.1にアップグレードしましたが、Python 2.7(ArcGIS 10.0に付属の2.6とは対照的)を使用しています)

Windows 7 64ビットでインストーラーを実行すると、インストーラーはインストールされますが、次のメッセージがスローされます。

ファイルオブジェクトデストラクタで閉じることができませんでした:

sys.excepthookがありません

失われたsys.stderr

アップグレード前に機能した.pdfファイルを含むフォルダーからプリンターに印刷するための単純なpythonスクリプトがありました

import arcpy, glob, win32api, os

pdfLoc = arcpy.GetParameterAsText(0)

try:
    copies = int(arcpy.GetParameter(1))
except:
    copies = 1

for pdfname in glob.glob(os.path.join(pdfLoc, "*.pdf")):
    fullpath = os.path.join(pdfLoc, pdfname)
    for copy in range(copies):
        win32api.ShellExecute(0, "print", pdfname, None, ".", 0)

del fullpath
del pdfname
del pdfLoc

スクリプトを実行すると、次のエラーが発生します。

トレースバック(最後の最後の呼び出し):ファイル "Z:\ ESRI\Python\Solstice_Tools_Scripts\Printer_Tools\Batch_Print_From_PDF_Only\BatchprintFromPDFOnly_Test.py"、34行目、win32api.ShellExecute(0、 "print"、pdfname、None、 "。"、 0)エラー:(31、 'ShellExecute'、 'システムに接続されているデバイスが機能していません。')

実行に失敗しました(BatchPrintFromPDFOnly2)。

実行可能ファイルをトラブルシューティングモードで実行するなど、いくつかの解決策を試しましたが、エラーが解決しません。誰かがこれを引き起こす可能性のあるものを提案できますか?

ちなみに、会社の4台のコンピューターを新しいバージョンのpythonとArcGISにアップグレードしましたが、そのうちの1台だけがこのエラーをスローしています。残りは正常に機能します。

ありがとう、マイク

18
Mike

私は同じ問題を抱えていましたが、少し違った方法で解決しました。別の管理者アカウントを作成する代わりに、管理者として実行で開始したコマンドプロンプトからpywin32-217.win32-py2.7.exeを正常に実行できました。

42
Rina Rivera

別の解決策は、Mark Hammondが提案するものです pywin32メーリングリスト上

これは、ユーザーアクセス制御(UAC)が無効になっている場合に発生するようです-無効になっていますか?

いずれにせよ、インストールディレクトリのルートから「pythonscripts\pywin32_postinstall.py -install」を実行してみてください。登録が完了するはずです。これで、次に表示されるエラーが修正されます。

これは私にとってはうまくいきました。

9
Gerrat

管理者としてnotインストールする必要があります。これを参照してください バグレポート

これはおそらく、「管理者」アカウントでWindowsを実行していて、通常実行するものはすべて「管理者として実行」と同じであるためです。

そして逆説的に、管理者としてWindows 7にpywin32のインストールを実行すると、このエラーが発生します。

したがって、回避策は別の管理者アカウントを作成することです

ネットユーザー管理/追加
ネットユーザー管理者
net localgroup Administrators Admin/add

次に、pywin32インストールを実行します。

runas/user:Admin pywin32-217.win32-py2.7.exe

6
John

どの解決策も私を助けませんでした(Windows 10に座っています)。

しかし、c:\ python27\scripts\pywin32_postinstall.py -installを実行すると、ようやく修正されました。

インストール後、念のためにインストーラーを再度実行してみることができます。

5
Pynord

_PowerShell command as admin_からの実行は、Windows 10で機能しましたが、Command line Prompt (as admin)は失敗しました。

2
Anonymouse

著者と同じ問題に遭遇しました。 Tim Golden python staff のスクリプトを使用してテキストファイルを印刷しました。実行後、次のようなエラーが発生します。

pywintypes.error:(31、 'ShellExecute'、 'システムに接続されているデバイスが機能していません。')

私のシステムはWindows7、64ビットです。 pythonはpython2.764ビットです。

このエラーは、pywin32のインストールやWindowsのシステム設定とは何の関係もないと思います。その理由は、ソフトウェアを開くデフォルトの設定が.txtファイルであるためだと思います。デフォルトのオープニングソフトウェアをNodepad ++からメモ帳に変更した後、Hpプリンターでファイルを印刷できるためです。

2
xjfengck

管理者としてインストーラーファイルを実行してpywin32-219.win-AMD64-py2.7.exeをインストールしたときに、同じ問題が発生しました。

ファイルを実行する(ダブルクリックする)だけでインストールすると、この問題は再発しませんでした。

私はWindows764ビットSP1を使用していますPython 2.7.9(64ビット)

しかし、奇妙なことに気づきました。インストーラーexeをダブルクリックしただけで、exeファイルを実行するかどうかにかかわらず、プロンプトが表示されるまでに20秒強かかりましたが、ファイルを管理者として実行する場合は、それはその時起こりました(それほど長く待つ必要はありませんでした)私は120 GB SSDを使用しているので、この場合のハードディスクの遅さを疑うことはできません。

とにかく、私の場合、pywin32のインストールが成功した後の出力は次のとおりです。

Copied pythoncom27.dll to C:\Windows\system32\pythoncom27.dll
Copied pythoncomloader27.dll to C:\Windows\system32\pythoncomloader27.dll
Copied pywintypes27.dll to C:\Windows\system32\pywintypes27.dll
Registered: Python.Interpreter 
Registered: Python.Dictionary 
Registered: Python 
-> Software\Python\PythonCore\2.7\Help[None]=None
-> Software\Python\PythonCore\2.7\Help\Pythonwin Reference[None]='C:\\Python27\\Lib\\site-packages\\PyWin32.chm'
Pythonwin has been registered in context menu
Creating directory C:\Python27\Lib\site-packages\win32com\gen_py
Shortcut for Pythonwin created
Shortcut to documentation created
The pywin32 extensions were successfully installed.
0
Deep

私はこれを使用してそれを解決しました:

pip install pypiwin32
0
Aminah Nuraini

Pywin32をインストールする手順-

  1. ネットユーザー管理/追加
  2. ネットユーザー管理者
  3. ネットローカルグループ管理者管理者/追加
  4. runas/user:Admin pywin32-217.win32-py2.7.exe
0