次の自動生成コードを含む ProjectName.cpp ファイル (アプリケーションのファイル) で宣言された引数を取得しようとしています。
extern "C" int FMXmain()
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TfrmPrincipal), &frmPrincipal);
Application->CreateForm(__classid(TfrmCarregar), &frmCarregar);
Application->CreateForm(__classid(TfrmCodigo), &frmCodigo);
Application->CreateForm(__classid(TfrmConfig), &frmConfig);
Application->CreateForm(__classid(TfrmImgConf), &frmImgConf);
Application->CreateForm(__classid(TfrmSobre), &frmSobre);
Application->CreateForm(__classid(TfrmTradutor), &frmTradutor);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
アプリケーションの起動時に引数を取得したいので、関数の宣言を次のように変更しようとしました。
extern "C" int FMXmain(String argv)
と
extern "C" int FMXmain(wchar_t* argv[]) // as I may need wide char support (TCHAR doesn't seems to be useful in this case)
または (デフォルト)
extern "C" int FMXmain(char* argv[])
私が持っている唯一の疑いは、取得した値をメインフォームに渡す方法です。作成後またはアプリケーションが既に実行されている後に渡す必要がありますか? どうすればいいのですか?
OBS: メインフォーム: frmPrincipal
私が何か間違っている場合は、教えてください。PS .: ファイル パスをダブルクリックして取得しようとしています (アプリケーションをレジストリにリンクする機能は既に取得しています)。
私を少し助けた参考文献:
WIKI ファイル(拡張子)をダブルクリックしてEXE(アプリケーション)で 開きます 関連ファイルをダブルクリックしてC++プログラムを開きます。ファイル名を取得するにはどうすればよいですか?
これからもよろしくお願いします。