Unityで作成したLeap Motionのアプリケーションの起動をWindows32bitと64bitで使い分ける方法

Visual Studio2013の使い方

プロジェクトの作成

ファイル→VisualC#→Windows→WPFアプリケーションを選択して名前を入れてOKボタンを押す。

WPFアプリケーション以外にWindowsフォームアプリケーション、コンソールアプリケーション、クラスライブラリと選択肢があるが。WindowsフォームアプリケーションはWPFアプリケーションの下位版。クラスライブラリは.dllを作るためのもので、単体では起動する事が出来ず.exeと組み合わせて使うもの。

実行可能形式ファイル.exeの作成まで

作成の前にソリューションエクスプローラーのプロジェクトを右クリックしてプロパティをクリックして開く。ビルドタブの中に「32ビットの優先」というチェックボックスがあるのでこれをはずす。チェックをつけたままだと64bitOSでも32bitプログラムが実行されてしまうので。

作成はビルド→ソリューションのクリーンをクリックして、ビルド→ソリューションのビルドをクリック。ツールバーの二段目の開始ボタンの右側にあるプルダウンリストをReleaseにする。その横のもAny CPUになっているか確認する。Any CPUとは32bit、64bitWindowsOSのどちらでも実行出来る形式にビルドする事。

終わったらプロジェクトフォルダを開いて見るとbin/Releaseフォルダの中にexeファイルが出来ている。

ソースファイルはこんなかんじ

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;

namespace Unity
{
    class SwitchApp
    {
        static void Main(string[] args)
        {
            if (IntPtr.Size == 8)
            {
                // 64bit
                Start("64bit\\The4DFingerTennis_LM_64bit.exe");
            }
            if (IntPtr.Size == 4)
            {
                // 32bit
                Start("32bit\\The4DFingerTennis_LM_32bit.exe");
            }
        }

        private static void Start(string exeName)
        {
            Process process = Process.Start(exeName);

            // 終了するまで待機する
            //process.WaitForExit();
        }

    }
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です