この実行可能ファイルの呼び出しを .csdef のスタートアップ タスクとして配置した場合、ロールがまだ設定されていないため、求めている情報が利用できない可能性があります ( Web/Worker ロールのライフサイクルを参照)。
これは、WebRole.cs の OnStart 内で実行可能ファイルを呼び出している場合にも問題になる可能性があります。これは、IISConfigurator が OnStart と非同期で呼び出されるためです。
スタートアップ タスクについては、この回避策の 1 つがhttp://mvolo.com/configure-iis-websites-windows-azure-startup-tasks-appcmd/で詳しく説明されています (ただし、IIS 構成の変更を扱っています)。
WebRole の問題については、Run() をオーバーロードし、そこから実行可能ファイルを呼び出すことができます。次のような再試行が必要になる可能性があります。
while (!RoleEnvironment.IsAvailable) {
Thread.Sleep(1000);
}
RunExecutable();