Perforce 用のカスタム GUI の構築を開始しています。DepotFiles を一覧表示できますが、クライアントで何かを実行しようとすると、NullReferenceException
.
SyncFiles メソッドについてはあまり見つけることができませんでした。また、Perforce の API ドキュメントはまったく役に立ちません。
ここに私が持っているものがあります:
try
{
Repository rep = con.Repositorio;
Client Workspace;
FileSpec files;
IList<FileSpec> FilesFound;
List<FileSpec> arquivos;
arquivos = new List<FileSpec>();
Workspace = rep.GetClient("Perforce_wp");
files = new FileSpec(new ClientPath("//..."), VersionSpec.Head);
arquivos.Add(files);
FilesFound = Workspace.SyncFiles(arquivos, null);
MessageBox.Show(FilesFound.Count.ToString(), "Title");
}
catch (P4Exception ex)
{
MessageBox.Show(ex.Message, "error");
}
しかし、FilesFound リストが null を返しています。おそらく何か問題があるのでしょうが、何が原因なのかわかりません。確認したところ、クライアントは正しく返され、接続は成功しています。
APIの経験が豊富な人が、何が間違っている可能性があるかを教えてもらえますか?
SyncFiles
r13.1 バージョンの p4api.net でメソッドを呼び出すときに発生する例外に関する詳細情報:
P4APIException: Client.SyncFiles: System.NullReferenceException: Object reference not set to an instance of an object.
at Perforce.P4.Client.runFileListCmd(String cmdName, Options options, String commandData, FileSpec[] files) in c:\tmp\21439306\src\P4.NET\r13.1\p4api.net\p4api.net\Client.cs:line 815
at Perforce.P4.Client.SyncFiles(Options options, FileSpec[] files) in c:\tmp\21439306\src\P4.NET\r13.1\p4api.net\p4api.net\Client.cs:line 3165