virtualization/VMware

[VMware ThinApp 4.6] 다른 버전의 FireFox를 동시에 기동

yueisu 2011. 8. 26. 10:03
사실 이건 FireFox의 문제입니다만, ThinApp를 이용할 경우는 팩캐징의 단계에서 설정이 가능하므로 소개합니다.

ThinApp에서 복수의 FireFox를 가상화했습니다. 예를들어 FireFox 3.0과 FireFox 4.0 이렇게 두 버전을요.
두 버전 모두 정상적으로 가상화하였으며 정상적으로 가상 데스크톱에 배포를 했다고 치죠.

하지만, 배포한 두 버전의 FireFox를 기동하면 똑같은 버전이 기동됩니다.  FireFox 3.0을 기동후 FireFox 4.0을 기동해도 기동되는건 FireFox 3.0죠. 반대로  FireFox 4.0을 기동후 FireFox 3.0을 기동하면 FireFox 4.0가 기동됩니다.

이것은 FireFox의 프로세스는 최초의 프로세스에 기생(?)을 하기 때문이랍니다. 때문에 아무리 버전이 다르더라도 기존의 FireFox 프로세스가 기동중일 경우는 최초의 프로세스에 의존을 해버린다... 라는거죠. 음...
따라서 이런 현상을 방지(?)하기 위해 "-no-remote" 옵션을 이용, 복수의 프로세스를 기동시켜줘야 합니다.

ThinApp에서 가상화할 경우는 Package.ini 화일에 다음과 같은 command line switch를 지정해주면 됩니다.

[firefox.exe]

Source=%ProgramFilesDir%\Mozilla Firefox 3.0\firefox.exe

;Change ReadOnlyData to bin\Package.ro.tvr to build with old versions(4.6.0 or earlier) of tools

ReadOnlyData=Package.ro.tvr

Protocols=FirefoxURL

CommandLine=%ProgramFilesDir%\Mozilla Firefox 3.0\firefox.exe --no-remote <-추가


이미 가상화를 한 경우는 레포지트리의 해당 폴더의 Package.ini 화일에 위의 command line switch를 지정후 build 배치 화일을 실행하면 됩니다.