Tag: c ++

SharePoint无法在Windows 2008上加载C ++ DLL

我有一个SharePoint DLL,它可以执行一些许可,并且作为代码的一部分,它使用外部C ++ DLL来获取硬盘的序列号。 当我在Windows Server 2003上运行此应用程序时,它工作正常,但在Windows Server 2008上,整个站点(加载时加载)会不断崩溃和重置。 这不是Windows Server 2008 R2,在64位或32位中是相同的。 如果我在DLL执行之前放置一个Debugger.Break ,那么我会看到代码到达中断点,然后再也不会再回到DLL中。 我确实从函数内部获得了一些调试断言警告,仅在Windows Server 2008中,但我不确定这是否相关。 我创建了一个运行C#DLL的控制台应用程序,后者又加载了C ++ DLL,这在Windows Server 2008上完美运行(虽然它确实显示了断言错误,但我现在已经抑制了这些)。 断言错误不在我的代码中,而是在ICtypes.c ,而不是我可以调试的东西。 如果我在DLL中放置一个断点,它永远不会被命中,编译器说: “step in: Stepping over non user code” 如果我尝试使用Visual Studio调试DLL。 我已经尝试包装用于调用DLL的代码: SPSecurity.RunWithElevatedPrivileges(delegate() 但这也无济于事。 我有这个DLL的源代码,所以这不是一个问题。 如果我从目录中删除DLL,我会收到有关丢失的DLL的错误。 如果我更换它,请回到没有错误或警告完全失败。 如果我用硬编码字符串替换此代码,整个应用程序工作正常。 任何建议都将非常感激,我无法理解为什么它作为控制台应用程序工作,但不是由SharePoint运行。 这是在同一台机器上使用相同的用户帐户… 这是用于调用DLL的代码: [DllImport(“idDll.dll”, EntryPoint = “GetMachineId”, SetLastError = true)] extern static string […]

将非托管C ++指针转换为对象到托管C#对象

我有一个用C ++编写的非托管静态库(.dll): // This is a personal academic project. Dear PVS-Studio, please check it. // PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com #include “program.h” struct MyData { int32_t index; char* name; //uint8_t* data; }; extern “C” { __declspec(dllexport) MyData* GetMyData() { MyData* ms = new MyData(); ms->index = 5; ms->name = “Happy […]

“此文件被阻止,因为它来自另一台计算机” – ajax权限问题

我通过从我的网站下载的html使用jQuery ajax获取本地xml文件。 问题是每次下载文件时,用户必须右键单击它 – >属性 – >解除阻止。 否则jquery ajax会抛出“权限被拒绝”错误。 有没有办法将文件标记为可信或类似的东西? 我应该在下载文件时在服务器端实现一些东西吗? 或者在保存的html文件中在客户端添加一些东西? 提前致谢。

原生C ++和C#互操作

所以我正在构建一个必然会使C ++工作的应用程序,但是MFC / ATL对我来说太麻烦了,所以我有一个很好的想法,就是用本机C ++中的所有“思考”代码和C#中所有漂亮的UI代码。 但问题是两者之间的互操作性。 在我对此过于沉迷之前,我想知道这是否是一个已解决的问题,并且有一个非常好的方法来做到这一点。 请注意,我不想在同一模块中混合使用逻辑和显示,因为它会产生恼人的高耦合。 这是我到目前为止所拥有的: 那么告诉我,它可以做得更好吗?

从List中删除重复的字符串(.NET 2.0!)

我有问题找到从字符串列表中删除重复项的最有效方法(List)。 我当前的实现是一个双foreach循环,检查每个对象的实例计数只有1,否则删除第二个。 我知道还有其他许多问题,但是他们所有最好的解决方案都需要上面的.net 2.0,这是我正在使用的当前构建环境。(GM和克莱斯勒非常不愿意改变… :)) 这限制了可能的结果,因为不允许任何LINQ或HashSets。 我正在使用的代码是Visual C ++,但C#解决方案也可以正常工作。 谢谢!

如何让Ace不再寻找当前目录中的主题和模式?

我一直在研究一个使用Cloud9提供的Ace浏览器代码编辑器的MVC Web应用程序。 ace.js脚本和设置ace编辑器的脚本都在我的BundleConfig上的ScriptBundle中。 捆绑正在装载完美。 在我的本地服务器上,在web.config中将debug设置为true,脚本运行得非常好。 但是,在web.config中启动调试设置为false的实时服务器后,出现了几个错误。 在修复了一些小故障后,仍有两个错误,我似乎无法理解其中的原因。 这两个错误看起来非常相似,因为它们是Ace的chrome主题和Ace的HTML模式脚本都没有找到404错误。 在设置编辑器的脚本中,它们的调用方式如下: editor.setTheme(“ace/theme/chrome”); editor.getSession().setMode(“ace/mode/html”); 在我的本地计算机上,将调试设置为true,主题和模式设置得非常好,一切都按计划运行。 但是,正如我所说,在调试设置为false的实时服务器上,因此缩小了ScriptBundles中的所有脚本,我得到主题和模式的404错误。 当我在谷歌浏览器中启动JavaScript控制台时,我被告知有两个404错误。 有关404错误的有趣之处在于它们链接到我正在查看的页面的当前目录,然后分别是“theme-chrome.js”和“mode-html.js”。 他们从来没有在那个目录中,但仍然没有。 所以我的问题是为什么脚本在缩小后开始在当前目录中查找它们的文件? 我该怎么做才能解决这个问题,这样我才能让它们在捆绑中保持简化,让它们有效? 或者有办法吗? 提前感谢您的帮助。

如何在asp.net mvc3中显示矩阵表?

我正在进行一个涉及使用entity framework和asp.net mvc3在矩阵视图中显示多对多关系数据库的小项目。 涉及的三个表是SalesPerson(行标签),产品(列标签)和销售: 如何在asp.net mvc3中开发/生成这种视图? @foreach (var m in Model) { foreach (var p in m.Products) { @p.ProductName } } @foreach (var m in Model) { foreach (var s in m.SalesPersons) { @s.PersonName } } @*Sales: a.Amount*@

这段代码构造的名称是什么:条件? true_expression:false_expression

以下结构的正确术语/名称是什么: string myString = (boolValue==true ? “true”: “false”);

如何防止JavaScript中的循环导致浏览器或应用程序崩溃?

我正在使用JavaScript在Windows 8.1 App中创建一个实时编辑器。 几乎完成了,但问题是每当我运行这样糟糕的循环或function,然后它会自动挂起或退出。 我用一个循环测试它,如:(它只是一个例子 – 用户可以用自己的方式编写它的循环..) for(i=0;i<=50000;i++) { for(j=0;j<5000;j++){ $('body').append('hey I am a bug’); } } 我知道这是任何应用程序或浏览器处理这种循环的最糟糕情况。 所以在这里我希望如果用户使用这样的循环然后我如何处理它,以产生他们的输出? 或者,如果它不能保护我的应用程序的那种循环,如果它对我的应用程序是危险的,所以我提醒用户: 运行此代码段可能会导致应用崩溃! 我有一个想法,如果代码有类似for(i=0;i<=5000;i++)东西,使用正则表达式检查代码然后上面的警告将显示,如何为此做一个正则表达式? 也可以包含C#作为后端 。

获取WPF WebBrowser HTML

我正在使用Wpf WebBrowser访问某个页面。 我需要得到它的HTML内容 – 我不能使用Webclient或WebReques等因为我需要在那些页面上执行JS。 我也尝试过Awesomium和Wf WebBrowser(都错了)。 dynamic doc=browser.Document; var text=doc.InnerHtml//or something like this 上面的代码对我不起作用,它显示无引用。 谁能告诉我怎么去取它? 我已经搜索了好几个星期,但没有发现任何真正有用的东西:/。 请回答一下你能想象到的最大笨蛋:D。 有时我会发现人们发给我一段代码而我不知道如何使用它…我的意思是请让你的post像结束一样 string HTML=some_stuff; 或者,如果你知道一些没有错误的替代浏览器,我可以访问HTML或者什么东西,让我在加载的Html上执行JS,像cookies一样影响和HTML源代码的变化,这也是一个非常好的答案。 我会感激任何帮助。