これは非常に古い問題かもしれませんが、いくつかの API の問題が原因で、私は本当にイライラしています。
私はいくつかのデスクトップ アプリケーション API を使用しています。この API のバージョンは毎月新しい機能で変更されます。次のシナリオを考えてみましょう。 A 社 ABC LTD が 1 つのウィンドウ アプリケーション ABCPRO を導入すると、バージョン 1.0.0.0 の com サポートがなく、ABCPRO には com API がありません。現在、会社は進歩し、新しいバージョンの ABCPRO 1.0.0.1 を導入していますが、このバージョンでも com サポートはありません。
ABCPRO API を取得していくつかの機能を実行できることを嬉しく思います。バージョン 2.0.0.0 で問題なく動作します。
現在、バージョン 2.0.0.1 では、LMN と呼ばれるもう 1 つの機能が導入されており、これは私たちにとって便利です。そのため、ABCPRO 2.0.0.0 を削除し、ABCPRO 2.0.0.1 をインストールします。 ABCPRO 2.0.0.0 2.0.0.1 を使用して実行可能ファイルを開発したため、ABCPRO 2.0.0.0 が存在するマシンで私の実行可能ファイルがクラッシュしました。
では、このバージョン管理の問題から抜け出すにはどうすればよいでしょうか?なぜなら、私たちが必要とする機能を備えた ABCPRO の多くのバージョンが導入されることを機能で知っているからです。
次のコードはあなたをクリアするかもしれません。
int main()
{
IABCPROAPI ABCPRO;
VARIANT var;
ABCPRO->GetNameOfServer(&Var);
VARIANT LMNVar;
ABCPRO->GetLMN(&LMNVar); //This introduce in version 2.0.0.1
}
編集:-
C ++で実行可能ファイルのバージョンを知るには??
または、try catch が役立つ場合がありますか??