Microsoft MVP성태의 닷넷 이야기
글쓴 사람
beaujava (pmhpotter at gmail.com)
홈페이지
첨부 파일
 

안녕하세요. 초보 개발자 입니다.
평소 모르는 지식을 구글링하면 정성태님의 홈페이지에 자주 들어오곤 했었는데요,
막히는 부분이 생기자 해답을 알고 계실 것 같아서 질문 드리려고 찾아왔습니다.

mfc 프로그램에서 파이썬 스크립트를 쓰고 싶어서 구글링과 테스트를 하던 중에 막히는 부분이 생겼습니다.

파이썬 스크립트는 tkinter 모듈을 import해서 단순히 tkMessageBox 라는 팝업창을 띄우게 되어 있고요
----------------python script----------------------------------------------------------------

from Tkinter import Tk
import tkMessageBox


print "hello"

def myFunc():
    tkMessageBox.showinfo("hello world", "hello world")
----------------------------------------------------------------------------------------------

mfc 에서는 특정 버튼 클릭 이벤트 리스너에서 위 스크립트를 로딩합니다.
이 프로그램을 빌드해서 exe 바이너리를 실행하면 제 컴퓨터에서는 버튼 클릭 시 팝업창이 잘 뜹니다.
(exe 와 같은 path에 위 파이썬 스크립트가 같이 있습니다.) 하지만 파이썬이 설치 안된 컴퓨터에서는 mfc
다이얼로그는 뜨지만 팝업창은 뜨지 않습니다.


이 프로그램을 파이썬이 설치 되지 않은 컴퓨터에서 정상동작 시키는 방법을 질문드리고 싶습니다.



제가 시도해 본 방법이 있는데요, 실패했지만 혹시나 해서 적어보겠습니다.
제 개발 컴퓨터에는 파이썬이 설치되어 있고 이 설치된 파이썬에서 파이썬과 tkinter 모듈을 팩? 해야 할 것 같아서
인터넷에서 구한 py2exe 스크립트를 이용해서 mfc 프로그램과 상관없이 위에 쓰인 파이썬 스크립트만 py2exe로 exe로 변환을 합니다.
그러면 py2exe가 파이썬 DLL과 기타 잡다한 모듈들을 팩? 해주더라고요.
위 py2exe 결과물들은 파이썬이 설치되지 않은 컴퓨터에서도 정상동작을 합니다. py2exe 결과로 나온 exe 바이너리를 실행하면 곧바로 팝업창이 뜹니다.
그 path에 mfc exe 바이너리와 파이썬 스크립트를 두면 혹시 팩? 된 애들을 참조해서 정상동작할까 해봤는데 실패하였습니다.









[최초 등록일: ]
[최종 수정일: 7/6/2016]


비밀번호

댓글 작성자
 



2016-07-06 01시25분
아마도 Python 인터프리터 관련 코드가 내장되어야 하지 않을까 싶은데요. 관련해서 boost 쪽에서 제공해주는 것을 쓰는 것이 가장 좋다고 합니다.

Calling python from a c++ program for distribution
; http://stackoverflow.com/questions/49137/calling-python-from-a-c-program-for-distribution
정성태

... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4878heyh...8/25/201710035프로세스의 프로세스 찾기(?) [2]
4877강준8/24/20179263SQLite journal_mode=wal 관련하여 질문드립니다. [1]
4876heyh...8/23/20179473프로세스 초기화하기 [1]
4874ho8/22/20179566파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4875ho8/23/201710541    답변글 [답변]: 파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4873kmi8/21/201711344전역 변수를 쓰지 않고 여러 군데에서 같은 변수를 공용하는 방법이 궁금합니다. [4]
4872abcd8/18/201710010프로세스를 초기화 하는 명령어도 있나요? [1]
4871kmi8/17/201711339메모리 부족으로 종료되는 현상의 여러가지 이유가 무엇인지 궁금합니다. [2]
4870heyh...8/14/201710136프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [1]
4868kmi8/4/20179448string[] 에 Reverse 적용방법 질문해봅니다 [3]
4867heyh...8/4/20178927EventHandler에 관한 [1]
486610년차8/3/20179369dsoframer axframer open시 기존 오픈되어있는 엑셀을 먹어버리는 현상 [1]
4865heyh...7/31/201710937클릭원스로 배포 한 프로젝트가 끝났는지 알 수 있는 방법 [8]
4864초보자7/28/20179934DllIImport질문 드립니다. [1]
4863다연아빠7/23/201710150전역 예외처리에 대해 질문있습니다. [3]
4861라르크7/17/201715404window form 예제 따라하는 중인데 12.3 서비스 응용 프로그램에서 진행이 안됩니다. [3]파일 다운로드1
4859heyh...7/10/201710063다른 환경에서 실행하기 [1]
4858heyh...7/10/20179899Clickonce update에 관한질문입니다. [1]
4857heyh...7/7/201710544제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyh...7/6/20179258성태님 다른질문입니다. [4]
4855JP7/6/20179936Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyh...7/6/20179377
4853heyh...7/5/20179487성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201711640서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201710759Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyh...7/3/201710504성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...