Protecting my code from reverse engineering

As discussed in similar questions here and here I want to protect my code from reverse engineering. My situation is as Simucal describes in his (excellent) answer here: Basically, what it comes down to is the only chance you have of being targeted for source theft is if you have some very specific, hard to engineer, algorithm related to your domain that gives you a leg up on your competition.

保护我的代码免受逆向工程

正如这里和这里的类似问题所讨论的,我想保护我的代码免受逆向工程的影响。 Simucal在他的(优秀)答案中描述了我的情况: 基本上,如果你有一些非常具体的,难以设计的,与你的域名相关的算法,让你在竞争中占上风,那么唯一的机会就是你被盗用的目标。 这是试图对应用程序的一小部分进行逆向工程的唯一时间。 我有这种情况。 一个难以设计的算法,对于我们特定的领域来说是优雅和有价值的。 经过几个月的微调和开发

c#

I am using Eigen to calculate the best fit of a set of points to a plane. What I need to do with this data, is then rotate the set of points so they lie flat, negating the rotation value. My code is: cv::Point2f plane_from_points(const std::vector<Vector3> & c) { // copy coordinates to matrix in Eigen format size_t num_atoms = c.size(); Eigen::Matrix< Vector3::Scalar

C#

我正在使用Eigen来计算一组点到飞机的最佳拟合。 我需要对这些数据进行处理,然后旋转一组点,使它们平放,否定旋转值。 我的代码是: cv::Point2f plane_from_points(const std::vector<Vector3> & c) { // copy coordinates to matrix in Eigen format size_t num_atoms = c.size(); Eigen::Matrix< Vector3::Scalar, Eigen::Dynamic, Eigen::Dynamic > coord(3, num_atoms); for (size_t

Rotating an object around it's centre in OpenGL

I'm writing small 3d viewer of models from .obj file. I have a car and I want to rotate car's wheels. I found a lot of good examples but I still have a problem: wheel rotates around point at the it's border, not around center. You can see it on the gif. Below part of code without code for material and lighting. I find coordinates of wheel's center. GL.PushMatrix(); // Rot

在OpenGL中围绕它旋转对象

我正在写.obj文件中模型的小型3D查看器。 我有一辆车,我想旋转车轮。 我发现了很多很好的例子,但我仍然遇到了一个问题:轮子围绕着它的边界旋转,而不是绕着中心旋转。 你可以在gif上看到它。 以下部分代码无材料和照明代码。 我找到车轮中心的坐标。 GL.PushMatrix(); // Rotate the car GL.Translate(x, y, z); //x=0, y=0, z=0 GL.Rotate(ori, 0, 1, 0); // ori=90 // ... // Material and lighting code // ...

3D Rotation around Local Axes

Background: I have been working on the problem of 3D object rotation around its local axes, using OpenGL. After having extensively searched on different forums for a mathematical model for updating the axes as x/y/z rotations happen, I found this to be the most helpful resource. http://nehe.gamedev.net/article/camera_class_tutorial/18010/ The Problem: I am currently stumbling upon a rather t

围绕局部轴的3D旋转

背景:我一直在研究使用OpenGL围绕本地轴旋转3D对象的问题。 在X / Y / Z旋转发生后,在各个论坛上广泛搜索了更新轴的数学模型后,我发现这是最有用的资源。 http://nehe.gamedev.net/article/camera_class_tutorial/18010/ 问题:我目前正在磕磕绊绊一个相当微不足道的问题。 上述资源的一个例子是围绕y轴旋转45度; 因此x轴和z轴需要更新。 新的x轴计算为(0.707,0,0.707),这是有道理的。 z轴是(-0.707,0,0.707)

Adding an euler angle to a Quaternion

I want to add an euler angle to an existing quaternion. Here is what i got: Quaternion oldTransform = transform.Rotation; float YawRotation = mouseDiff.x * RotationSpeed; Quaternion YawRotationQuaternion = new Quaternion(); YawRotationQuaternion.CreateFromAxisAngle (0, 1, 0, YawRotation); float PitchRotation = mouseDiff.y * RotationSpeed; Quaternion PitchRotationQuaternion = new Quaternion()

给四元数增加一个欧拉角

我想为现有的四元数增加一个欧拉角。 这是我得到的: Quaternion oldTransform = transform.Rotation; float YawRotation = mouseDiff.x * RotationSpeed; Quaternion YawRotationQuaternion = new Quaternion(); YawRotationQuaternion.CreateFromAxisAngle (0, 1, 0, YawRotation); float PitchRotation = mouseDiff.y * RotationSpeed; Quaternion PitchRotationQuaternion = new Quaternion(); PitchRotationQuaternion.

Publish one web project from solution with msbuild

I'm trying to deploy one of the web projects in my solution to a server. I am using msbuild on TeamCity like so: msbuild MySolution.sln /t:WebSite:Rebuild /p:DeployOnBuild=True /p:PublishProfile=Prod ... However, when I run it, msbuild still tries to build my WebService project, even though my WebSite project does not depend on it (but it does depend on a Services project also in the solut

使用msbuild从解决方案发布一个Web项目

我试图将我的解决方案中的一个Web项目部署到服务器。 我在TeamCity上使用msbuild,如下所示: msbuild MySolution.sln /t:WebSite:Rebuild /p:DeployOnBuild=True /p:PublishProfile=Prod ... 但是,当我运行它时,即使我的WebSite项目不依赖于它(但它依赖于解决方案中的Services项目),msbuild仍会尝试构建我的WebService项目。 如何只发布一个项目,也就是WebSite ? 我也尝试使用构建项目文件 msbuild WebSite/WebSit

C# String Comparison equates to false

I have a string comparison issue that - for the most part - behaves as expected, but is leaving me with a large number f duplicate DB insertions because my code is not detecting the string pairs as duplicate. I thought I had narrowed it down to a culture issue (Cyrillic characters), which I resolved, but I'm now getting 'false negatives' (two apparently equal strings showing up as n

C#字符串比较等同于假

我有一个字符串比较问题 - 大多数情况下 - 的行为如预期的那样,但是留下大量f重复的数据库插入,因为我的代码没有将字符串对检测为重复。 我以为我已经把它缩小到一个文化问题(西里尔字符),我解决了这个问题,但现在我得到了'假阴性'(两个显然相同的字符串显示为不等于)。 我看过以下类似的问题,并尝试了以下比较方法。 类似的问题,我已经检查: 为什么我的比较总是返回错误? C#字符串相等运算符返

Workaround for lack of return type covariance when overriding virtual methods

is there any way to 'hack' or 'coerce' covariant overrides in to C#? For example: public class Alpha { public virtual Alpha DoSomething() { return AlphaFactory.GetAlphaFromSomewhere(); } } public class Beta : Alpha { public override Beta DoSomething() { return BetaFactory.GetBetaFromSomewhere(); } } Unfortunately, C# doesn't support this (wh

在重写虚拟方法时解决缺乏返回类型协方差的问题

有没有办法'破解'或'强制'协变覆盖到C#中? 例如: public class Alpha { public virtual Alpha DoSomething() { return AlphaFactory.GetAlphaFromSomewhere(); } } public class Beta : Alpha { public override Beta DoSomething() { return BetaFactory.GetBetaFromSomewhere(); } } 不幸的是,C#不支持这个(这看起来有点荒谬,但这不是在这里也不在那里)。 我想

PostAuthenticateRequest() get called in Global.asax?

When setting up custom principals for the [Authorize] attribute to work in Microsoft's MVC version 4 and 5, we need to go into Global.asax.cs and set up a method called Application_PostAuthenticateRequest() . I've done that in my current project, and it works just fine. However, it really bugs me how much this seems like "magic". Application_PostAuthenticateRequest() is not

PostAuthenticateRequest()在Global.asax中调用?

为[Authorize]属性设置自定义主体以在Microsoft的MVC版本4和5中工作时,我们需要进入Global.asax.cs并设置一个名为Application_PostAuthenticateRequest()的方法。 我已经在我目前的项目中完成了这项工作,而且工作得很好。 然而,它真的让我感到很奇怪,这看起来像是什么“魔力”。 Application_PostAuthenticateRequest()不是一个虚拟方法。 我不会在课堂上重载或实施任何现有的方法签名。 那么,MVC框架如何知道它呢?

How do you reference a WCF service in a COM interop enabled DLL?

Problem Summary : I have a C# DLL that is COM interop enabled/visible. This C# DLL has a service reference to a WCF service. When I instantiate the WCF service in the C# code, COM interop returns a error HRESULT (0x80131509). Problem Details : There are three components in my solution. The first is an unmanaged C++ application. This C++ application needs to communicate with a WCF service.

如何在COM互操作DLL中引用WCF服务?

问题摘要 :我有一个COM interop启用/可见的C#DLL。 此C#DLL具有对WCF服务的服务引用。 当我在C#代码中实例化WCF服务时,COM互操作返回错误HRESULT(0x80131509)。 问题详情 : 我的解决方案中有三个组件。 第一个是非托管C ++应用程序。 此C ++应用程序需要与WCF服务进行通信。 我决定的方法是在C ++应用程序和WCF服务之间创建一个C#中间层。 C#层将是COM互操作启用/可见,以便C ++应用程序可以调用它并且C#代