Microsoft的ActiveX和Google的Native Client都允许您构建在浏览器中执行本机编译代码的Web应用程序.除了它们在不同的浏览器和操作系统上运行之外,它们之间的技术差异是什么?
是否可以使用其他浏览器可以连接的Native Client打开端口?像浏览器到浏览器连接?
networking network-programming google-chrome google-nativeclient
由于Google NaCl是C++,我能以某种方式访问文件系统吗?如果我要创建游戏或桌面应用程序,那就非常需要.
我意识到上面的问题相当广泛,所以我会缩小范围.我有一个简单的opengl c ++游戏引擎,它位于一个静态库中(可以转换为动态库).
我一直在想办法让它在网上运行.从我所看到的,我可以使用ActiveX或Google NaCl在浏览器中运行c ++代码.但这些技术似乎并不容易跨平台?或许我误解了.
我看到的另一个选择是将引擎转换为javascript和WebGL并在HTML5画布中运行.这会比c ++慢吗?但这将是非常跨平台的.
您认为最好的选择是什么,或者更好的是我还有其他选择吗?
编辑:类似于团结网络播放器的自定义插件怎么样?
我的目的是为windows用户创建一个chrome插件.是否可以从Native Client/PPAPI调用windows api.如果可能怎么样?
那些函数式语言编译器都可以将函数式语言编译为C代码.谷歌的NaCl SDK可以编译C.通过首先与其他编译器之一进行编译并通过谷歌的Native Client SDK运行结果来创建Native Client应用程序是否合理?
任何人都这样做或有关于可能性,陷阱,限制的具体信息?
非常感谢!
据我了解,PNaCl旨在支持C和C++.有没有人设法获得在PNaCl中运行的任何其他语言(编译为本机代码)?
我有一个镀铬打包的应用程序,其中还包括一个PNaCl/NaCl C++模块,以及一些NaCl模块需要读入的数据文件.但是,我无法读取文件.
我根据我能找到的所有文档和官方示例进行设置,以及答案:如何在chrome应用程序中包含数据文件以供本机客户端模块读取
SDK附带的nacl_io演示能够执行此操作,但它使用的是C语言,而不是C++.
我想出了一个简单的例子,我将在下面发布.当您按下页面上的按钮时,NaCl模块应加载test.txt的第一个字符并显示它.截至目前,它始终只响应"-100"(我输入的错误值),这意味着它无法打开文件,而不是文件的第一个字符.
任何人都可以建议一些允许它正常工作并加载文件的更改吗?
为了运行它,在Mac至少,我用这个命令,随着./file-test目录中的所有文件上:/应用/谷歌\ Chrome.app/Contents/MacOS/Google \铬--load-和推出应用内=./文件测试
请注意,如果您尝试使用它,则很可能需要更改makefile中的NACL_SDK_ROOT路径.
#include "ppapi/cpp/instance.h"
#include "ppapi/cpp/module.h"
#include "ppapi/cpp/var.h"
#include "nacl_io/nacl_io.h"
#include "sys/mount.h"
class FileTestInstance : public pp::Instance {
public:
explicit FileTestInstance(PP_Instance instance) : pp::Instance(instance)
{
// initialize nacl file system
nacl_io_init_ppapi(instance, pp::Module::Get()->get_browser_interface());
// mount the http root at /http
mount("", "/http", "httpfs", 0, "");
}
virtual ~FileTestInstance() {}
// Receive message from javascript
virtual void HandleMessage(const pp::Var& var_message) {
// Open and load from the file
int c;
FILE *file; …Run Code Online (Sandbox Code Playgroud) 可以在chrome.fileSystem里面使用NaCl吗?
谢谢
google-chrome google-chrome-extension google-nativeclient google-chrome-app
我正在尝试对VideoStream做类似的事情
它们包括带有nacl的 ffmpeg 并将其包含在chrome应用程序中
我正在努力,但我不能让naclportlist ffmpeg在我的项目上工作!
原因是那些
所以我的问题很简单,如何与ffmpeg和chrome沟通?如果VideoStream可以做到,为什么我不能?
非常感谢你的回答!
activex ×2
c++ ×2
ffmpeg ×1
filesystems ×1
html5 ×1
javascript ×1
ml ×1
networking ×1
plugins ×1
ppapi ×1
scheme ×1