2009-12-15 27 views
10

我正在使用Py2exe在Windows 7 Pro(64位)上使用Python 2.6(32位)編譯CherryPy(3.1)服務器。Py2exe:在編譯沒有GUI界面的Web服務器時需要清單文件和w9xpopen.exe嗎?

該服務器將在沒有GUI的情況下運行。

問題:

  1. 我需要予以關注增加一個清單文件爲這個應用程序,如果它運行沒有GUI?

  2. 我是否需要將w9xpopen.exe與我的exe包含在一起?

到目前爲止,我有限的測試已經表明,我並不需要在順序清單文件或w9xpopen.exe與我的可執行文件爲它工作。

評論贊賞。

謝謝 馬爾科姆

回答

10

w9xpopen.exe是Windows 95/98,所以如果你不使用那些你不需要它。

您可以在您的安裝文件中添加dll_excludes=['w9xpopen.exe'],以便py2exe排除該問題。

當然,如果您不使用GUI,您也不需要清單文件。

+0

我的印象是Python 2.6還需要一個清單文件,以便exe能找到它的MSVC * .DLL運行時文件。如果我正確理解您的評論,則不是這種情況,因爲清單文件僅適用於GUI應用程序 - 不是控制檯應用程序。它是否正確?謝謝! - Malcolm – Malcolm 2009-12-16 15:18:21

+1

我正在構建[單文件可執行文件](http://stackoverflow.com/a/113014/1497596),儘管我在'setup.py'中加入了'dll_excludes []'指令,文件'w9xpopen.exe'仍然被添加到我的'dist'目錄。 (雖然我認識到'w9xpopen.exe'不需要在Windows 7上運行我生成的單文件可執行文件。) – DavidRR 2015-02-05 17:38:15

0

控制檯應用程序不需要清單文件。 Win XP及更高版本不需要w9xpopen.exe

0
  • 不應要求清單。

  • 而且可以排除w9xpopen.exe(爲Win XP及以上)

對於它的價值,使用py2exe v 0.6.9 w9xpopen我必須設置dll_excludes爲py2exe選項可自動排除在我的setup.py文件中。下面是「myapp.py」的例子:

from distutils.core import setup 
import py2exe, sys, os 

sys.argv.append('py2exe') 

setup( 
    name = "...", 
    version = '1.0', 
    description = "...", 
    author = "...", 
    windows = [{'script': 'myapp.py', 
       'icon_resources': [(1, 'myapp.ico')] 
       }], 
    zipfile = None, 
    data_files=[], 
    options = { 
     'py2exe': { 
      'optimize':2, 
      'bundle_files': 2, 
      'compressed': True, 
      'excludes':[], 
      'dll_excludes':['w9xpopen.exe'] 
      } 
     } 
) 

對於應用運行SANS圖形用戶界面,你可以使用console=[...],而不是windows=[...]