草庐IT

com_result

全部标签

.net - COM 互操作 : indexed property signature issues

我正在开发一个项目,该项目是对一个相当大的经典ASP项目的.NET扩展,使用了大量C++COM对象,这些对象一直存在于我们的代码库中。不幸的是,C++端有很多hack-ish代码,我担心我没有足够的经验来解决我遇到的问题。简而言之,我可以实例化有问题的COM对象,VisualStudio告诉我应该能够调用它的“方法”(在引号中,因为它们实际上作为参数化属性公开)。但是,我尝试调用的任何方法都会给我错误“索引属性‘CoreAspLib.IComUser.LoginUser’具有必须提供的非可选参数。”问题是,我使用的参数与经典ASP世界中使用的参数完全相同,甚至属性的IntelliSen

c++ - 我们应该将 COM 中的 BSTR 类型视为值还是引用?

从ATLInternals一书中,我知道BSTR不同于OLECHAR*,BSTR有CComBSTR和CString。根据MSDNAllocatingandReleasingMemoryforaBSTR,我知道调用者/被调用者的内存管理责任。从MSDN中获取这一行,HRESULTCMyWebBrowser::put_StatusText(BSTRbstr)我仍然不知道如何在我的实现中正确处理bstr。因为我仍然有一个关于BSTR的基本问题——我们应该将bstr视为一个值(如int)还是一个引用(如int*),至少在COM接口(interface)边界上。我想在我的实现中尽快将BSTR转换

PHP致命错误:致电未定义功能mysqli_stmt_get_result()

我一直在遇到错误php致命错误:调用未定义的功能mysqli_stmt_get_result()。我正在使用PHP版本5.6,并启用了托管提供商C面板中的扩展MySqlind,但我无法弄清楚为什么我仍然会遇到此错误。我已经研究并发现每次需要Mysqlind都可以使用mysqli_stmt_get_result。任何人都可以协助/教我做错了什么。谢谢你。Ingip.php:true,'message'=>'Therewasanerror','redirect','errors');if(isset($_POST['submit'])){$first=$_POST['first'];$last=$

c++ - 新手在这里 : Different results on PC and MAC. 为什么?

这个问题在这里已经有了答案:Whyaretheseconstructsusingpreandpost-incrementundefinedbehavior?(14个答案)关闭8年前。我现在正在尝试学习C/C++的基础知识。我正在学习Lynda.com上的类(class)我的问题涉及第4章“C/C++基本培训类(class)中的宏警告”中的一系列代码。我已按照所有设置程序在Mac上正确设置Xcode和Eclipse,在PC上正确设置Eclipse。当我在MAC和PC上运行这段代码时,我得到了不同的结果。只是想了解为什么会发生这种情况,以及我可以做些什么来在两者上获得相同的结果。代码如下:

c++ - 未解析的外部符号 "private: static int Math::result"

这个问题在这里已经有了答案:Whatisanundefinedreference/unresolvedexternalsymbolerrorandhowdoIfixit?(38个答案)关闭8年前。这是我的类定义:#includeusingnamespacestd;classMath{private:staticintresult;public:staticintadd(inta,intb){result=a+b;returnresult;};};这是主要的:#include#include"Amin.cpp"usingnamespacestd;intmain(){Math::add(2

c# - COM 基本链接

伙计们,你能给我提供学习基本COM的教程链接或.pdf吗?。我用谷歌搜索它..我仍然推荐stackoverflow的答案所以请通过我..谢谢 最佳答案 这是我的一些比较好的书签:Wikipedia-ComponentObjectModelIntroductiontoCOM-WhatItIsandHowtoUseIt.IntroductiontoCOMPartII-BehindtheScenesofaCOMServerFinallyUnderstandingCOMAfterChangingaLightBulbIntroductiont

c++ - COM 初始化和在 Win32 C++ DLL 中的使用

我正在编写一个使用COM查询WMI的Win32C++DLL。如何以编程方式确定COM是否已初始化?谢谢。 最佳答案 MarkRansom是对的直接、干净和简单的解决方案是要求调用者对COM进行初始化。丑陋的骇客您可以尝试第一次调用-可能是CoCreateInstance,如果它返回CO_E_NOTINITIALIZED,请自己运行CoInitialize(在这种情况下不要忘记取消初始化)但是,从DLL将CoInitialize“注入(inject)”到调用者线程中仍然存在问题。所以有一个清洁溶液让DLL创建一个工作线程(这意味着DL

c++ - 我如何使用 _com_ptr_t?

假设我有一个拥有D3DDevice的类:classThing{public:Thing(){D3D11CreateDevice(...,&device,...);}~Thing(){device->Release();}private:ID3D11Device*device;};据我所知,我可以使用_com_ptr_t来确保删除对象,而不必在析构函数中显式调用Release()。但问题是我无法找出模板的正确语法。我几乎找不到关于_com_ptr_t的任何信息,我能找到的最接近答案的是this(Japanese)one.按照那里的语法,我得到了一堆编译器错误:private://ID3D

应用程序崩溃抛出了拒绝权限的例外:阅读com.android.providers.media.mediaprovider

我正在开发一个需要读取和写入外部存储的应用程序的应用程序。我已经在清单文件以及我的Java活动文件中编写所有权限permissiondenial:readingcom.android.providers.media.MediaProvider清单文件Java文件publicclassFragment_twoextendsFragment{privateRecyclerViewrecyclerView2;privateListmodelList;privatemyAdapter2adapter;privateMenuItemmenu;publicFragment_two(){}@Override

c# - 使用 COM 互操作将 BSTR 从 C++ 编码到 C#

我有一个用C++编写的进程外COM服务器,它由一些C#客户端代码调用。服务器接口(interface)之一上的方法向客户端返回一个大的BSTR,我怀疑这是导致内存泄漏的原因。代码有效,但我正在寻求有关编码BSTR的帮助。稍微简化一下,服务器方法的IDL是HRESULTProcessRequest([in]BSTRrequest,[out]BSTR*pResponse);实现看起来是这样的:HRESULTMyClass::ProcessRequest(BSTRrequest,BSTR*pResponse){USES_CONVERSION;char*pszRequest=OLE2A(req