私はPerforce、別名Helix Core、C ++ APIを使用して、プログラムでPerforceコマンドを実行しています。これまでに見つけたすべての例は簡単で、サーバーへの接続を確立してコマンドを実行する方法を示しています。しかし...それでは何?そのコマンドの出力にアクセスするにはどうすればよいですか?
簡単な例:
#include <p4/clientapi.h>
// Connect to server.
ClientApi client;
client.SetProtocol( "tag", "" );
client.Init( &e );
if ( e.Test() )
{
e.Fmt( &msg );
fprintf( stderr, "%s\n", msg.Text() );
return;
}
// Run the command.
ClientUser cu;
client.Run( "info", &cu );
// Access the output.
ummm... ?
(この質問は「p4api」タグに値します。しかし、私は新しいタグを作成するのに十分な評判がありません。)
ClientUser
オブジェクトは、出力を受け取ります。このコードをコマンドラインから実行p4 info
すると、OutputInfo()
メソッドによって出力が出力されていることがわかります。
出力で何か別のことをしたい場合ClientUser
は、他のことをする出力メソッドをサブクラス化して実装します。
https://www.perforce.com/manuals/v15.1/p4api/chapter.methods.html#clientuser.outputinfo
PERFORCEワークショップにはこの例がたくさんあります。https://swarm.workshop.perforce.com/files/guest/sam_stafford/deepannotate/DAUserFilelog.cpp
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加