什么是三维建模软件广泛使用的THREE.JS的三维模型格式(可以导出为该格式).我问这个问题,因为我的3D模型有自己独特的格式,并希望在THREE.JS中使用它们.虽然我可以编写自己的加载器,但我认为将它们转换为标准格式会更好.
我有问题将我的网络摄像头图片(没有声音)流式传输到HTML页面.我正在使用最新的(v2.0.2 vlc for windows)进行流式传输,这是命令行:
"c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" -I dummy dshow:// --dshow-vdev="Logitech QuickCam Chat" --dshow-adev=none --dshow-caching=0 --sout=#transcode{vcodec=h264,vb=1024,channels=1,ab=128,samplerate=44100,width=320}:http{mux=ts,dst=:8080/webcam.mp4}
Run Code Online (Sandbox Code Playgroud)
当我在另一个vlc播放器(http://127.0.0.1:8080/webcam.mp4)中打开流时,我可以观看流,但是当我尝试将其嵌入网页时,我什么都看不见!这是代码:
<!DOCTYPE html>
<html>
<head>
<title>Video Test</title>
</head>
<body>
<video id="video" class="projekktor" autoplay="autoplay" width="300px" preload="metadata">
<source src="http://127.0.0.1:8080/webcam.mp4" />
Your browser doesn't appear to support the HTML5 <code><video></code> element.
</video>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
比我试图在浏览器中打开它:
file:///C:/videostreaming/video.html
Run Code Online (Sandbox Code Playgroud)
我在chrome示例中看到的是,有网络流量,流正在下载,但没有显示.
我在本地化django-nonrel项目时遇到了问题,该项目已部署到GAE.因为GAE,我必须将所有内容放入我的项目文件夹中,所以它看起来像这样
project
+ django
+ dbindexer
+ registration
+ myapp
...
+ locale
+ templates
Run Code Online (Sandbox Code Playgroud)
我在templates目录和目录中有字符串本地化myapp.当我python manage.py makemessages -l en --ignore django\*从项目目录运行时,它会爬过项目的所有目录,包括django,所以我得到了一个非常大的po文件.我从模板中找到了我的字符串,以及来自django目录的所有字符串.
在--ignore(或者只是-i)之后,我尝试了pu django django/*,但没有改变.有任何想法吗?
我的问题是,我有一些带有不同索引表的编码(base64 like):
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/
Run Code Online (Sandbox Code Playgroud)
代替
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
Run Code Online (Sandbox Code Playgroud)
所以当我使用base64.b64decode()它时会给我一个错误的结果.有没有办法在转换时设置此表(可能作为参数)?
或者我应该"转换"错误的base64字符串,我的意思是将0替换为A,将1替换为B等等...而不是使用base64decode?如果是这样,最好的和快速的解决方法是什么?
update1:我使用它,这有效,但看起来有点慢,而且不专业.:)
def correctbase64(str):
dicta = [ ['0','A'], ['1','B'], ['2','C'], ['3','D'], ['4','E'], ['5','F'], ['6','G'], ['7','H'], ['8','I'], ['9','J'], ['A','K'], ['B','L'], ['C','M'], ['D','N'], ['E','O'], ['F','P'], ['G','Q'], ['H','R'], ['I','S'], ['J','T'], ['K','U'], ['L','V'], ['M','W'], ['N','X'], ['O','Y'], ['P','Z'], ['Q','a'], ['R','b'], ['S','c'], ['T','d'], ['U','e'], ['V','f'], ['W','g'], ['X','h'], ['Y','i'], ['Z','j'], ['a','k'], ['b','l'], ['c','m'], ['d','n'], ['e','o'], ['f','p'], ['g','q'], ['h','r'], ['i','s'], ['j','t'], ['k','u'], ['l','v'], ['m','w'], ['n','x'], ['o','y'], ['p','z'], ['q','0'], ['r','1'], ['s','2'], ['t','3'], ['u','4'], ['v','5'], ['w','6'], ['x','7'], ['y','8'], ['z','9'] ]
l …Run Code Online (Sandbox Code Playgroud) 我无法弄清楚如何检测静态或甚至动态链接的DLL中的内存泄漏.我只想检测dll中的泄漏,我不想在dll和应用程序之间共享内存管理器.此外,dll 与运行时包链接
我的示例dll看起来像这样:
library dll;
uses
fastmm4,
System.SysUtils,
System.Classes;
{$R *.res}
procedure MyInit; stdcall;
Begin
TObject.Create;
End;
exports MyInit;
begin
end.
Run Code Online (Sandbox Code Playgroud)
应用程序dpr:
program app;
uses
//fastmm4,
Vcl.Forms,
main in 'main.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Run Code Online (Sandbox Code Playgroud)
注意:如果我取消注释fastmm4,那么我可以检测到由应用程序(TStringList.Create)引起的memleak,而不是dll中的泄漏.
并在应用程序主单元中:
unit main;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
LDLLHandle: HModule;
LShowProc: TProcedure;
end;
var
Form1: TForm1;
{$ifdef static}
procedure MyInit; stdcall; external …Run Code Online (Sandbox Code Playgroud) 我有两个应用程序,它们与消息通信,如果我运行两个编译的exe,一切都按预期工作.但是当我从delphi ide运行(调试)发送器(bds2006,没有运气时尝试使用delphi 7)时,sendmessage不会发送任何内容.
似乎ide会阻止向其他应用程序发送消息.我在win7 64bit和borland 2006上使用WM_COPYDATA.
任何的想法?
寄件人:
procedure TForm1.Button1Click(Sender: TObject);
var dst: THandle;
stringToSend : string;
copyDataStruct : TCopyDataStruct;
begin
stringToSend := 'Hello';
copyDataStruct.dwData := 0; //use it to identify the message contents
copyDataStruct.cbData := 1 + Length(stringToSend) ;
copyDataStruct.lpData := PChar(stringToSend) ;
SendData(copyDataStruct) ;
end;
procedure TForm1.SendData(const copyDataStruct: TCopyDataStruct) ;
var
receiverHandle : THandle;
res : integer;
begin
receiverHandle := findwindow( pchar('TForm2'), pchar('Form2') );
if receiverHandle = 0 then
begin
ShowMessage('CopyData Receiver NOT found!') ;
Exit;
end;
res …Run Code Online (Sandbox Code Playgroud) 首先,我想要的是相当复杂的,至少对我而言,但另一方面听起来令人兴奋.
我有一个用delphi编写的软件,我想要一个基于Web的实时客户端.
要求:
在服务器端
在delphi方面,我认为我可以使用Overbyte中的ICS来处理请求.我知道来自ICS包的THttpAppSrv可以很容易地提供简单的内容,但是Websocket呢,或者我怎么能用它进行长时间的轮询呢?
您如何看待,它是一个很好的组合(GWT,客户端的SmartGWT,以及delphi方面的ICS),是否有任何示例项目,还是有其他解决方案?
更新 感谢有用的评论,我想我更接近解决方案.很高兴知道GWT可以使用自定义服务器,但我认为Arnaud是对的,GWT使用它自己的Jetty服务器是一个完整的解决方案,但遗憾的是不适合我.:)我想我需要一个用delphi编写的服务器,它可以与GWT RPC通信.
更新2 我接受了Arnaud Bouchez的答案,这个答案让我看起来对原始问题最好,但我认为有一个更好的解决方案(如果你稍微改变一点要求)来创建一个在浏览器中运行的delphi应用程序的客户端.我在这里做一点评论,分享这个想法.最后我使用了node.js服务器,并在ZMQ的帮助下将其连接到我的delphi应用程序.
我需要使用delphi 7将字符串从utf8转换为widestring.谁能告诉我为什么以下代码在delphi 7中不起作用?Utf8Decode函数的参数只是一个示例.
var ws: WideString;
begin
ws := Utf8Decode('[???…?¨?Š?±] ?®?·?? ???Š?§?±- ???Š?§?± ?…????§?µ?„ ?…?·?„?‚');
end;
Run Code Online (Sandbox Code Playgroud)
在delphi 7中,它给了我很多问号,但是在bds2006中它运行良好.
我是否需要切换一些编译器指令,或者如何在delphi 7中将utf8String转换为Widestring?
解
Utf8Decode函数没有任何问题,Delphi Code Insight Tooltip表达式评估输出误导了我,它无法显示Widestrings.见下图:

但是MessageBoxW可以显示文本:

我正在使用zeromq将消息从node.js服务器推送到我的worker.我router在node.js端创建了一个套接字
var sender = zmq.socket('router');
sender.bind('tcp://127.0.0.1:6633', function(err) {
if (err) {
console.log( 'Error binding socket' );
return;
}
console.log('OK!');
}
Run Code Online (Sandbox Code Playgroud)
并使用dealerworker代码中的a连接到此地址.
当工作者在绑定之前首先连接(不总是,但经常)时,会出现问题.这应该不是关于zeromq文档的问题,所以我认为这是node.js绑定中的问题,问题是我该如何解决这个问题?
此外,我可以赶上这个异常的问题Socket is busy中process.on('uncaughtException',...),而不是在bind功能
我应该提一下,我在Windows 7 64bit上这样做.
我在我的网站中使用了几种Passport身份验证策略,效果很好,但是,我需要一个Demo或(我们可以调用session)策略,它会根据它的会话ID自动授权用户,现在我手动执行,当用户导航时在/demo页面上,我使用会话ID在db(mongodb)上运行查询,如果用户存在,我使用该用户呈现页面,如果不是,我创建一个.
app.get('/demo', function(req,res) {
db.User.findOne({ 'accounts.kind': 'demo', 'accounts.sid': req.sessionID }, function(err, user) {
if (user) {
res.render( 'home', {
user: user
});
} else {
var user = new db.User();
user.accounts.push({
kind: 'demo',
sid: req.sessionID,
created: Date.now
});
req.session.userId = user._id;
user.save(function(err) {
if(err) { throw err; }
res.render( 'home', {
user: user
});
});
}
});
});
Run Code Online (Sandbox Code Playgroud)
用户架构如下所示:
UserSchema = new Schema({
uname: {type: String},
accounts: [],
docs:[{type:Schema.Types.ObjectId, ref:'Doc'}]
})
Run Code Online (Sandbox Code Playgroud)
它工作,但我需要设置一个会话变量,因为这个方法不会登录用户,我的意思是req.user请求中没有,但是使用该会话变量我可以检查用户是否是演示用户. …
我正在尝试动态地向我的页面添加弹出窗口,其中有很好的JQM内容(按钮等).弹出窗口已添加,但未应用任何样式.
这是代码(它不是很长,所以我在这里复制):
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script> </head>
<body>
<div id='page' data-role='page'>
<div data-role='header'>
<h1> Header </h1>
</div>
<div data-role='content'>
<p>Code sample</p>
<a id='add' data-role='button'> Add popup </a>
<a href='#popup' data-role='button' data-rel='popup'> Show dynamic popup </a>
<a href='#popup2' data-role='button' data-rel='popup'> Show static popup </a>
</div>
<div id="popup2" data-role='popup'>
<div data-role="header">
<h1>Popup Header</h1>
</div>
<div data-role="content">
<p>Some content</p>
</div>
</div>
</div>
<script>
$(document).ready( function(){
$('#add').bind( 'click', function(ev){
var
page = $('#page');
var
popup = …Run Code Online (Sandbox Code Playgroud) delphi ×4
django ×2
node.js ×2
3d ×1
delphi-7 ×1
delphi-xe3 ×1
dll ×1
fastmm ×1
file-format ×1
gwt ×1
html5-video ×1
icalendar ×1
passport.js ×1
python ×1
smartgwt ×1
three.js ×1
unicode ×1
vlc ×1
zeromq ×1