私はこの問題を解決するためにかなりの時間を費やしましたが、役に立ちませんでした。Googleだけでなくstackoverflowも検索しましたが、(一見)単純な問題を解決できませんでした。
次の行でFileNotFoundExceptionが発生しています。
Image.FromFile("\\Resources\\Icons\\key-icon.png");
フォルダと画像は本当にそこにあり、何が問題なのかわかりません。
私はこの問題を解決するためにかなりの時間を費やしましたが、役に立ちませんでした。Googleだけでなくstackoverflowも検索しましたが、(一見)単純な問題を解決できませんでした。
次の行でFileNotFoundExceptionが発生しています。
Image.FromFile("\\Resources\\Icons\\key-icon.png");
フォルダと画像は本当にそこにあり、何が問題なのかわかりません。
「yourproject/bin / Release」から開始されることを考慮する必要があるため、2つのディレクトリを上に移動する必要があります。これを行う:
Image.FromFile("..\\..\\Resources\\Icons\\key-icon.png");
相対パスではなく絶対パスを使用してみてください...つまり
Image.FromFile(Server.MapPath(@"~\Resources\Icons\key-icon.png"));
Image.FromFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory,
@"Resources\\Icons\\key-icon.png"))
ベースディレクトリファイル名を組み合わせる
先頭の「。」が欠落している可能性があります。
Image.FromFile(".\\Resources\\Icons\\key-icon.png");
内部的には、ファイルが存在するかどうかを確認するためにImage.FromFile
使用します。File.Exists
このメソッドは次のfalse
場合に戻ります。
2番目のオプションがあなたの問題である可能性があります。
そして別の可能性:Resources
ネットワーク共有ですか?その場合、以下を使用する必要があります。
Image.FromFile("\\\\Resources\\Icons\\key-icon.png");
この場合、sikuliがプロジェクトのルートフォルダを自動的に検出しないことを発見しました。この場合、コマンドを使用してフォルダを指定する必要がありますSystem.getProperty("user.dir");
import org.sikuli.script.*;
public class Test {
public static void main(String[] args) {
Screen s = new Screen();
try{
String pathYourSystem = System.getProperty("user.dir") + "\\";
s.click(pathYourSystem + "imgs/spotlight.png");
//s.wait(pathYourSystem + "imgs/spotlight-input.png");
//s.click();
s.write("hello world#ENTER.");
}
catch(FindFailed e){
e.printStackTrace();
}
}
}