好吧,基本上我要包装一个大的C++项目(Recast),以便我可以在我的C#项目中使用它.
我一直试图这样做一段时间,这就是我到目前为止所做的.我正在使用C++/CLI来包装我需要的类,以便我可以在C#中使用它们.
但是,我的C#项目中还需要大量的结构和枚举.那么如何包装这些呢?
我现在使用的基本方法是将dllexport调用添加到本机c ++代码,编译为dll/lib,将此lib添加到我的C++/CLI项目并导入c ++头文件,然后将CLI项目编译为dll,最后添加此dll作为我的C#项目的参考.我感谢任何帮助.
这里有一些代码.由于C++项目非常庞大,我需要可管理的方法.
//**Native unmanaged C++ code
//**Recast.h
enum rcTimerLabel
{
A,
B,
C
};
extern "C" {
class __declspec(dllexport) rcContext
{
public:
inline rcContect(bool state);
virtual ~rcContect() {}
inline void resetLog() { if(m_logEnabled) doResetLog(); }
protected:
bool m_logEnabled;
}
struct rcConfig
{
int width;
int height;
}
} // end of extern
// **Managed CLI code
// **MyWrappers.h
#include "Recast.h"
namespace Wrappers
{
public ref class MyWrapper
{
private:
rcContect* _NativeClass;
public:
MyWrapper(bool …Run Code Online (Sandbox Code Playgroud) 我正在尝试配置tomcat以使用JNDI Realm连接到ldap数据库,以便与Active Directory集成.但是,我在日志中收到以下错误,似乎无法提高日志级别以查看实际情况.
Feb 19, 2014 10:10:41 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1048 ms
Feb 19, 2014 10:10:42 AM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Feb 19, 2014 10:10:42 AM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.36
Feb 19, 2014 10:10:42 AM org.apache.catalina.realm.RealmBase init
FINE: Register Realm Catalina:type=Realm,realmPath=/realm0
Feb 19, 2014 10:10:42 AM org.apache.catalina.authenticator.AuthenticatorBase start
FINE: No SingleSignOn Valve is present
Feb 19, 2014 10:11:34 AM org.apache.catalina.authenticator.AuthenticatorBase start
FINE: No SingleSignOn Valve is present
Feb 19, 2014 …Run Code Online (Sandbox Code Playgroud) YouTube是否已开始锁定跨源请求?
我在我的网站上使用全屏自动播放英雄视频,它已经运行了很长时间.在过去的几周内它停止工作,我在日志中有以下错误.
无法在'DOMWindow'上执行'postMessage':提供的目标来源(' https://www.youtube.com ')与收件人窗口的来源(' https://tbrogames.github.io ')不匹配.
根据这个问题的答案
我尝试在http和https之间更改主机以查看是否会修复它而它没有.
我的网站抛出错误:https://tbrogames.github.io/
我找到了一个更大的游戏网站也有这个问题. https://playbattlegrounds.com/main.pu
他们还使用youtube视频作为英雄/启动视频; 并且它不再起作用,抛出相同的错误.
相关的JavaScript可以在这里找到 https://github.com/tbrogames/tbrogames.github.io/blob/master/js/defer.js
但是,这工作了很长时间,我没有改变任何代码.这就是为什么我认为这是YouTube所做的改变.