小编sim*_*mon的帖子

如何保护MATLAB编译的应用程序免于分发?

如何保护MATLAB编译的.exe:

  • 逆向工程
  • 未经授权的分配?

我应该使用哪些包装工具,保护工具等?

matlab protection piracy piracy-prevention piracy-protection

7
推荐指数
1
解决办法
3392
查看次数

WPF和后台工作者问题

在我的程序中有一个BackgroundWorker类,它将图像预加载到BitmapImage对象.我需要将预加载的图像传递给主应用程序(WPF),然后将其复制到另一个BitmapImage对象.然而,当我尝试时,这似乎有效

imgViewer.Source = imgNext;  //imgNext is a main app copy of the preloaded image
Run Code Online (Sandbox Code Playgroud)

发生错误意味着该对象(imgNext)由另一个线程拥有并且无法使用.

任何想法如何摆脱它并使代码工作?

谢谢大家的回答!

事实上,我设法通过创建一个静态BitmapImage内部App类来解决这个问题.在使用它之前,我做到了

 App.iNext = null;
Run Code Online (Sandbox Code Playgroud)

然后我加载实际图像并冻结它,这样就可以从任何地方访问这个静态属性.当循环重复多次时,指定null可防止"对象冻结"错误.

当然,管理单个BGW实例,排队任务等方面还有很多工作要做.

(目前我正在使用在我的程序中定义的ImagesContainer类,它具有两个BitmapImage属性.我用它来接收来自backgroundworker的预加载图像.)

imgNext是MainWindow中定义的公共变量.(主线程)

 void bwImgLoader_DoWork(object sender, DoWorkEventArgs e)
        {
            backgrLoadNextPrevList list =  e.Argument as backgrLoadNextPrevList;
            ImagesContainer result = new ImagesContainer();
            if (list.HasNextPath) result.imgPrev = PrepareImage(list.NextPath);
            if (list.HasPrevPath) result.imgNext = PrepareImage(list.PrevPath);
            e.Result = result;
        }
void bwImgLoader_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            ImagesContainer result  = e.Result as ImagesContainer;
            if (result.imgNext != null)
            {
                setNextDelegate s = …
Run Code Online (Sandbox Code Playgroud)

c# wpf multithreading

2
推荐指数
1
解决办法
1187
查看次数

PHP正则表达式无法正常工作 - 在本地服务器上返回NULL,但在其他服务器上正常工作

我有以下正则表达式:

/\{\s?joomla-tag\s+(.*<+.+>+.*)\s?\}/is
Run Code Online (Sandbox Code Playgroud)

和以下代码:

$regex = "/\{\s?joomla-tag\s+(.*<+.+>+.*)\s?\}/is";
$replace = '<div class="someclass">$1</div>';
$text = preg_replace( $regex, $replace, $text );
Run Code Online (Sandbox Code Playgroud)

但是,不幸的是,它无法匹配以下代码(尽管如此):

.... many html lines .......
<p>123{joomla-tag Lore<strong>m</strong> ip</p>
<p>sum dolor sit amet}</p>
.... many html lines .......
Run Code Online (Sandbox Code Playgroud)

请参阅真实示例: http ://pastebin.com/WSQyrmxd

怎么了:正则表达还是其他什么?你能告诉你正确的变体吗?在RegExr中,一切都很顺利,但不是在PHP中.

在本地服务器上,我只是在preg_replace之后得到NULL


编辑: 最后我找到了一个解决方案:(谢谢,sg3s,一个想法) http://www.pelagodesign.com/blog/2008/01/25/wtf-preg_replace-returns-null/

php regex

2
推荐指数
1
解决办法
949
查看次数

Superglobals:PHP安全性

客户端是否有可能以某种方式修改PHP超全局变量,特别是$ _SERVER - 可能不是常见的方式?

换句话说,这段代码是否安全:

if (($this->error->getCode()) == '404') {
   ob_clean();
   echo @file_get_contents("http://".$_SERVER['SERVER_NAME'].'/404.html');
} 
Run Code Online (Sandbox Code Playgroud)

php security

1
推荐指数
1
解决办法
533
查看次数