2009-02-26 3 views
1

일반적으로 모바일 개발자는 스마트 최소화 기능으로 처리하므로이 작업을 수행하지 않아도됩니다.실행중인 경우 내 응용 프로그램을 감지하고 다시 활성화하십시오. - compact framework

내 모바일 앱이 부트 스트 래퍼 앱에 의해 시작되었으므로 직접해야합니다.

시작 메뉴 아이콘은 웹 서비스에서 대상 버전을 다운로드하고 해제 한 다음 닫는 배트 스트랩퍼를 시작합니다. 어떤 이유로 든 앱이 최소화되면 사용자는 일반적으로 시작 메뉴 아이콘을 사용하여 앱을 다시 활성화합니다. 그러나 부트 스트 래퍼가 실행되어 클라이언트의 두 번째 사본이 생성됩니다.

이 질문은 데스크탑 응용 프로그램을위한 인터넷상의 모든 곳에서 나타납니다 (실제로이 사이트에 있습니다). 일반적으로 인용 된 솔루션은 발견 된 프로세스를 다시 활성화하기 위해 API 호출과 결합 된 Process.GetProcessesByName의 조합을 사용하는 것입니다. 또 다른 솔루션은 일부 VisualBasic dll에서 상속받은 컨트롤러 클래스를 만들어 이름을 잊어 버리는 것입니다. 필자가 만난 해결책은 comapct 프레임 워크에서 지원하지 않습니다.

Process.GetProcessesByName 할 수있는 컴팩트 프레임 워크의 대안은 있는가 :

그래서 실제 질문의 조합은?

그렇지 않은 경우 어떤 API 호출을해야합니까?

답변

3

아직 알지 못하지만 MSDN에 필요한 정보가있는 process manager application을 만드는 기사가 있습니다.

이 문서는 toolhelp.dll을 사용하는 것이 좋습니다. 실행중인 프로세스 목록을 얻는 데 필요한 자세한 내용을 살펴보십시오. Visual Studio 2003 용이므로 실행중인 VS.NET의 버전이 무엇이든 상관 없습니다.

+0

흠 - 나는 그것을 놓쳤습니다! 그게 내가 원하는 것처럼 보입니다. 감사합니다 –

+0

위의 기사는 저를 시작 시켰고 다음의 StackOverFlow 질문은 샘플이 약간의 영역에서 엉뚱한 것으로 조정할 수있게 도와주었습니다 : http://stackoverflow.com/questions/393881/p-invoking-createtoolhelp32snapshot-failing -in-compact-framework ctacke의 대답은 매우 유용했습니다! –