発生している問題・エラーメッセージ
はじめて投稿します。
pyinstallerを用いてエラーなしでexeファイル作成できたのですが、実行できませんでした。
ログでは以下のエラーがひとつのみ出ています。
[13168] LOADER: Error activating the context: ActivateActCtx: 既定のアクティブ化コンテキストのプロセスは既に設定されていたため、既定のアクティブ化コンテキストのプロセスを設定する試み は失敗しました。
該当のソースコード
http://sin-to-meru.jugem.jp/?eid=13
Python
1# -*- coding:utf-8 -*- 2import os 3import glob 4import chardet 5 6def is_utf8_file_with_bom(filename): 7 '''utf-8 ファイルが BOM ありかどうかを判定する 8 ''' 9 line_first = codecs.open(filename, 'r', 'utf-8').readline() 10 return (line_first[0] == u'¥ufeff') 11 12def check_encoding(file_path): 13 """ファイルのエンコーディングを取得する。 14 Args: 15 file_path (string): ファイル名 16 Return: 17 string : エンコーディング 18 """ 19 detector = chardet.UniversalDetector() 20 with open(file_path, mode='rb') as f: 21 for binary in f: 22 detector.feed(binary) 23 if detector.done: 24 break 25 detector.close() 26 enc = detector.result['encoding'] 27 if enc == 'utf-8': 28 is_with_bom = is_utf8_file_with_bom(file_path) 29 enc = 'utf-8-sig' if is_with_bom else 'utf-8' 30 return enc 31 32def main(): 33 workDir = os.path.dirname(os.path.abspath(__file__)) 34 fileList = glob.glob(workDir + "/*.txt"); 35 outputDir = f'{workDir}/utf8' 36 if not os.path.exists(outputDir): 37 os.mkdir(outputDir) 38 for file in fileList: 39 enc = check_encoding(file) 40 if (enc == 'Windows-1252'): 41 enc = 'Shift-JIS' 42 print(f'file:{file} enc:{enc}') 43 baseName = os.path.basename(file) 44 utf8File = f'{outputDir}/{baseName}' 45 # 文字コードを utf-8 に変換して保存 46 with open(file, "r", encoding=enc) as orgFile, open(utf8File, "w", encoding="utf-8") as outFile: 47 data = orgFile.read() 48 outFile.write(data) 49 50if __name__ == '__main__': 51 main()
試したこと
exe化する前の.pyで実行したときは、chardetのImportができずに実行できませんでしたが、
コマンドプロンプトからは実行できました。
chardetをImportした.pyは問題なく実行できるのですが、exe化すると動きません。
補足情報
[13168] LOADER: Error activating the context: ActivateActCtx:
のエラーについての日本語の情報が少ないです。
> ログでは以下のエラーがひとつのみ
Traceback で始まる行はありませんか?
# traceback not found in PYZ がありました。ほかにも
# chardet not found in PYZ もありました。
ライブラリがexeに含まれていないということですかね。
https://github.com/pyinstaller/pyinstaller/issues/2495#issuecomment-286209531
の、Johndt6さんの14 Mar 2017のコメントの後半の長ーーーいのの途中に、
> LOADER: Error activating the context: ActivateActCtx:
が出てきます
ただし、そのずっと下の「Traceback」で始まる行は、質問者さんとは違いますので、質問者さんの現状と上記Webページに書かれてる現象が合致するかは分かりませんが、上記コメントのすぐ下のhtgoebelさんの14 Mar 2017のコメントに書かれてるようなことをやって調べたら、何か分かるかもしれません
回答2件
あなたの回答
tips
プレビュー