C++ 是否有更简单的Windows C++;Subversion API或minimal_client.c的示例.vcproj?

C++ 是否有更简单的Windows C++;Subversion API或minimal_client.c的示例.vcproj?,c++,windows,visual-studio,svn,C++,Windows,Visual Studio,Svn,跟随在…的尾巴上 使调用Subversion客户端API变得简单: SvnClient client = new SvnClient(); client.Authentication.DefaultCredentials = new NetworkCredential(username, password); client.CheckOut(new Uri("http://xxx.yyy.zzz.aaa/svn/repository"), workingCopyDir); 另一方面,如中所示,

跟随在…的尾巴上

使调用Subversion客户端API变得简单:

SvnClient client = new SvnClient();
client.Authentication.DefaultCredentials = new NetworkCredential(username, password);
client.CheckOut(new Uri("http://xxx.yyy.zzz.aaa/svn/repository"), workingCopyDir);
另一方面,如中所示,从C/C++调用客户机API需要在Subversion上编写“更贴近金属”的代码

如果没有,有一个VS2003 C++项目(A.VcProjfile),演示了如何让MelimalSuxCube运行?< /强>我能够编译MelimalSuffClea.c,并使用以下库链接它:

libsvn_client-1.lib libsvn_delta-1.lib libsvn_diff-1.libsvn_fs-1.lib libsvn_fs_base-1.libsvn_fs_fs-1.lib libsvn_ra-1.libsvn_本地-1.lib libsvn_-ra-1.libsvn_-repos-1.libsvn_subr-1.libsvn_-wc-1.libapr-1.libapr-1.libaprutil.lib

但当我运行我的应用程序(在调试器中或在不进行调试的情况下启动发布版本)时,它会运行大约20秒而不点击main()的第一行,然后抛出此异常:

类型的未处理异常 中发生“System.TypeLoadException” 未知模块

其他信息:无法加载 从程序集中键入
apr\u pool\t
最起码的客户, 版本=1.0.3477.16033, 区域性=中性,PublicKeyToken=空

我尝试了libsvn_u2;.lib和svn_2;.lib的各种组合,但都没有效果

有没有关于我做错了什么的想法?

编辑:我从一个“Win32 Console项目”(仍在VS2003中)重新开始,现在我能够调试应用程序的前几行。但现在,在这条线上:

if (svn_cmdline_init ("minimal_client", stderr) != EXIT_SUCCESS)
我得到一个不同的异常(在调试器中或在不调试的情况下启动发布版本):

中0x7c91b21a处未处理的异常
Win32ConsoleProject\u minimal\u client.exe
: 0xC0000005:访问冲突写入 位置0x00000010


编辑:说明此错误是我的应用程序中svn和stderr之间的CRT不匹配。如果我不想建立它们匹配的VPN(我不想),我可以传递NULL而不是STDRR(如果我愿意不做消息,去STDRR),当我这样做的时候,我的应用程序一直正确运行。

< P>你可以升级到Visual C++ 2005吗?如果是这样的话,您可以使用带有C++/CLI的SharpSvn

或者甚至可以坚持VC2003,用SharpSvn来管理C++?(并不是说我对od(即使是if)有任何了解)


编辑:哦,SharpSvn的主页明确地说明了VC++ 2005 SP1是必需的…

< P>似乎C++包装没有溢出“网”。但是,您可能需要尝试SVNCPP,它可以从RapidSVN链接


请参阅详细信息(注:我没有尝试过)。

是一个托管C++项目吗?您尝试过一个“常规”C++项目吗?@ RAPHELSP——这可能是我的问题之一。请参阅我的编辑。这真的是3个问题:“有一个更简单的API吗?”“有一个VCPROJ示例吗?”和“为什么SnnE.CdLeLyIn()为什么抛出一个异常?“我已经解决了”为什么SnnE.CdLyLyIn()抛出异常?因此,“有一个.vcPRJ示例吗?”变得不那么重要了。我仍然想回答一个问题:“Windows C++ 2003 API是否简单?”情况阻止迁移到2005。这也是我所发现的。我是否应该担心它被称为“0.9?8”?我不这么认为,应用程序已经出现了至少三年,所以C++包装器应该是相当有用的。尤其是一个接近1的版本号。我接受这个,因为你的评论开始了“这是一个托管C++项目吗?”,我得到了我现在需要的。谢谢顺便说一下,如果你决定创建自己的更简单的包装器,我会感兴趣的!