MatlabCompilerで作成したスタンドアローンアプリでのAWS S3へのデータアクセス方法について
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
和哉
am 12 Mär. 2025
Verschoben: Kojiro Saito
am 18 Mär. 2025
MATLAB から Amazon S3 バケットにアクセスして、S3 上にあるバケットの存在確認およびファイルのデータを取得するスクリプトを作成しました。
MATLAB上での実行では問題なく動作し成功のメッセージボックスがでることを確認しましたが、このスクリプトをMATLAB Compilerでスタンドアローンアプリにすると失敗のメッセージボックスが出力されてしまいました。
何が原因か教えてください。
% AWSの設定
awsAccessKey = '**********';
awsSecretKey = '**********';
setenv('AWS_ACCESS_KEY_ID', awsAccessKey);
setenv('AWS_SECRET_ACCESS_KEY', awsSecretKey);
setenv('AWS_DEFAULT_REGION','ap-northeast-1');
% バケットの存在確認
if isfolder("S3上のバケットパス")
msgbox("isfolder成功")
else
msgbox("isfolder失敗")
end
% S3上にあるファイルのデータを取得
try
testData = readmatrix("S3上のファイルパス");
if ~isempty(testData)
msgbox("readmatrix成功")
else
msgbox("readmatrix失敗")
end
catch
msgbox("readmatrix失敗")
end
7 Kommentare
Kojiro Saito
am 13 Mär. 2025
公式ではなくユーザーさんの調査結果になりますが (参考:https://jp.mathworks.com/matlabcentral/answers/780072)、下記のコマンドでコンポーネント番号からコンポーネント情報を調べることができます。
pcmn = matlab.depfun.internal.ProductComponentModuleNavigator;
pcmn.productInfo(35000)
「35002 35003 35010」はそれぞれ
35002 Graphics
35003 Non Interactive MATLAB
35010 Numerics
となります。
Akzeptierte Antwort
Kojiro Saito
am 15 Mär. 2025
Verschoben: Kojiro Saito
am 18 Mär. 2025
コンポーネント35000 (MATLAB Runtime - Core)を含めるようにしてMATLAB Runtimeのインストーラーを作ってみてはいかがでしょうか。
compiler.runtime.download % 4.4 GBのダウンロードなので少々時間が掛かります
compiler.internal.buildinstallagent(35000, 35002, 35003, 35010) % requiredMCRProducts.txtに入っていない35000を追加
MATLAB Runtimeのインストーラーが
C:\Users\ユーザー名\AppData\Local\MathWorks\installAgent\R2024b\win64\InstallAgent_f00000000000000000.zip
のようなファイル名で作成されますので、Zipを配布先のマシンにコピーし、解凍してsetup.exeを実行してMATLAB Runtimeをインストールします。
その後で「for_redistribution」にある「MyAppInstaller_web.exe」でスタンドアロンアプリのインストールを実行します。MATLAB Runtimeのインストールはスキップされます。
2 Kommentare
Kojiro Saito
am 18 Mär. 2025
Verschoben: Kojiro Saito
am 18 Mär. 2025
@和哉さん
確認ありがとうございました。解決して良かったです。
一旦上記のコメントを回答に移動させますので、回答の採用 (accept)の処理を実行いただけますでしょうか。
コンパイル時にコンポーネント35000がrequiredMCRProducts.txtに含まれていないのはそもそも挙動として不自然なので、こちらはバグ報告しておきます。
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu インストールとライセンスの紹介 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!