我为我的应用程序制作了一个GUI。所有脚本都使用Python(2.7),并使用Tkinter创建GUI。我在Linux上工作,但我需要这个应用程序在Windows上可执行。所以我使用了py2exe来创建可执行文件。过了一段时间它几乎完美地工作,但我有以下问题:
在应用程序的某个地方,我需要调用外部程序,即ImageMagick和LaTeX。我使用命令os
,只需导入os.system(build)
模块并运行build = 'convert page.pdf page.gif'
,其中NSPredicate *predicate = [NSPredicate predicateWithFormat:@"aMostRecentFlag == 1"]; // find old records
preferenceData = [PreferenceData MR_findAllWithPredicate:predicate inContext:defaultContext]; // source
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSMutableDictionary *preferencesDict = [[userDefaults dictionaryForKey:@"preferencesDictionary"] mutableCopy]; // target
// start filling the userDefaults from the last Preferences record
/*
Printing description of preferencesDict: {
apptInterval = 15;
colorScheme = Saori;
servicesType = 1;
shopCloses = 2000;
shopOpens = 900;
showServices = 0;
syncToiCloud = 0;
timeFormat = 12;
}
*/
[preferencesDict setObject: preferenceData.colorScheme forKey:@"shopOpens"];
等。当从* .exe应用程序调用这些命令时,控制台会弹出(意味着控制台窗口会打开一段时间并再次关闭)。 有没有办法阻止这种行为?
它不会中断应用程序,但它很丑陋并且不是理想的行为。
[注意] 我选择了不来添加任何样本,因为有很多文件和其他内容,我认为这些内容与问题无关。然而,我可以尝试发布最小(非)工作示例。但也许不需要它。
谢谢!
答案 0 :(得分:0)
import subprocess
subprocess.Popen("application.exe", shell = True)