将字符串从 C# 编组到 C++

2023-12-01

我是微软世界的新人。 我在尝试将简单的字符串从 c# 传递到 dll/c++ 时遇到很多问题 我读过很多帖子和文档,但问题是一样的。

C++ code

extern "C" __declspec(dllexport) int Init( long l , char* url );

C# code

[DllImport("MCRenderer.dll", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = false)]
    public static extern int Init(long a, StringBuilder url);


Init(hndl.ToInt64(), str );

发生的事情是,长值正确传递,而字符串参数是

0x00000000 <Bad Ptr>

你能帮我吗...我真的很困惑 谢谢!! 股份公司


您应该传递一个字符串,url 应该是字符串类型而不是 StringBuilder。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将字符串从 C# 编组到 C++ 的相关文章

  • 在 C# 中使用“using”关键字避免多次处置的最佳实践

    当变量是 IDisposable 时 我们有using关键字来管理处置 但是如果我们在方法中返回值怎么办 using twice StringContent stringToStringContent string str using St
  • XPATH 查询、HtmlAgilityPack 和提取文本

    我一直在尝试从名为 tim new 的类中提取链接 我也得到了解决方案 给出了解决方案 片段和必要的信息here https stackoverflow com questions 2982862 extracting a table ro
  • 叮当错误?命名空间模板类的朋友

    以下代码在 clang 下无法编译 但在 gcc 和 VS 下可以编译 template
  • 并行化斐波那契序列生成器

    我正在学习并行化 在一项练习中 我得到了一些我应该提高性能的算法 其中之一是斐波那契数列生成器 array 0 0 array 1 1 for q 2 q lt MAX q array q array q 1 array q 2 我怀疑 这
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • 将 OpenCV Mat 转换为数组(可能是 NSArray)

    我的 C C 技能很生疏 OpenCV 的文档也相当晦涩难懂 有没有办法获得cv Mat data属性转换为数组 NSArray 我想将其序列化为 JSON 我知道我可以使用 FileStorage 实用程序转换为 YAML XML 但这不
  • C# 处理标准输入

    我目前正在尝试通过命令行断开与网络文件夹的连接 并使用以下代码 System Diagnostics Process process2 new System Diagnostics Process System Diagnostics Pr
  • 静态类与类的实例

    我有一个静态类 用于访问我的公共属性 整个应用程序的全局属性 和我在应用程序运行期间使用的方法 例如 我在静态类中设置了一些属性 并且在应用程序运行时我可以从属性中获取值 但我可以使用单例模式创建非静态类并以相同的方式使用它 问题 对于我的
  • 如何在win32中使用GetSaveFileName保存文件?

    我编写此代码是为了获取 fileName 来保存我的文件 include stdafx h include
  • 在 C# 中何时使用 ArrayList 而不是 array[]?

    我经常使用一个ArrayList而不是 正常 array 当我使用时 我感觉好像我在作弊 或懒惰 ArrayList 什么时候可以使用ArrayList在数组上 数组是强类型的 并且可以很好地用作参数 如果您知道集合的长度并且它是固定的 则
  • 通过 C# Mailkit / Mimekit 发送电子邮件,但出现服务器证书错误

    Visual Studio 2015 中的 0 代码 1 我正在使用 Mailkit 最新版本 1 18 1 1 从我自己的电子邮件服务器发送电子邮件 2 电子邮件服务器具有不受信任的自签名证书 3 我在代码中添加了以下两行 以忽略服务器证
  • 子目录中的头文件(例如 gtk/gtk.h 与 gtk-2.0/gtk/gtk.h)

    我正在尝试使用 GTK 构建一个 hello world 其中包括以下行 include
  • 如何使用递归查找数字中的最小元素 [C]

    好的 所以我正在准备我的 C 考试 当谈到递归时我有点卡住了我是大学一年级的学生 这对我来说似乎有点困难 练习要求在给定的数字中使用递归函数我需要找到最小的元素 例如 52873 是 2 程序需要打印 2 include
  • 无法为 wsdl 文件创建服务引用

    I have wsdl文件和xsd我本地机器上的文件 我想在项目中添加服务引用 我没有网络服务 我只有wsdl file 我收到以下错误 The document was understood but it could not be pro
  • 如何使用 CSI.exe 脚本参数

    当你运行csi exe 安装了 Visual Studio 2015 update 2 您将得到以下语法 Microsoft R Visual C Interactive Compiler version 1 2 0 51106 Copyr
  • ALTER TABLE ... ADD CONSTRAINT 失败时将事务回滚到保存点

    有没有办法在事务中添加检查约束and如果失败回滚到以前的保存点 而不是回滚整个事务 就我而言 当 ALTER TABLE ADD CONSTRAINT 命令失败时 事务无法回滚到保存点 尝试这样做会引发 InvalidOperationEx
  • C# 中的 C/C++ 代码编译器

    在 C 中 我可以使用下面的代码编译 VB 和 C 代码 但无法编译 C C 代码 有什么办法可以做到这一点吗 C 编译器 public void Compile string ToCompile string Result null st
  • 为什么 f(i = -1, i = -1) 是未定义的行为?

    我正在读关于违反评估顺序 http en cppreference com w cpp language eval order 他们举了一个令我困惑的例子 1 如果标量对象上的副作用相对于同一标量对象上的另一个副作用是无序的 则行为未定义
  • Linq.Select() 中的嵌套表达式方法调用

    I use Select i gt new T 每次手动点击数据库后将我的实体对象转换为 DTO 对象 以下是一些示例实体和 DTOS 用户实体 public partial class User public int Id get set
  • 如果“嵌入式”SQL 2008 数据库文件不存在,如何创建它?

    我使用 C ADO Net 和在 Server Management Studio 中创建的嵌入式 MS SQL 2008 数据库文件 附加到 MS SQL 2008 Express 创建了一个数据库应用程序 有人可以向我指出一个资源 该资

随机推荐

  • TFS 构建代理用户功能的值可以在构建步骤中获得吗?

    我正在尝试在 TFS 中编写一个构建步骤 该步骤依赖于了解构建代理存储 nuget exe 的位置 标准 nuget install 步骤以破坏构建执行的方式破坏了参数的顺序 所以我想使用batch shell ps 步骤之一自己运行exe
  • 检查连续元素之间的差异是否相同

    我是在 Prolog 中使用算术的新手 我做过一些小程序 但主要涉及逻辑 我正在尝试实现一个将返回的函数true or false每个连续元素对之间的差异是否相同 我的输入如下所示 sameSeqDiffs 3 5 7 9 2 我觉得我需要
  • Gradle 替代 mvn install

    我在 mvn 上构建了 2 个不同的项目 我正在尝试更换为 Gradle 项目 1 是一个 SDK 项目 2 使用该 sdk 示例 在 maven 的时候 它使用 mvn install 创建工件 将整个项目添加到本地存储库中 我喜欢这样在
  • 如何将 linq 结果转换为 HashSet 或 HashedSet

    我有一个 ISet 类的属性 我正在尝试将 linq 查询的结果获取到该属性中 但不知道如何执行此操作 基本上 寻找最后一部分 ISet
  • 执行程序时,代码块打开 2 个控制台窗口

    我最近安装了 Code Blocks 并使用它进行 C 编程 我编写了一个基本的 Hello World 程序 当我运行该程序时 会打开 2 个控制台窗口而不是 1 个 如果只有输出 则第一个控制台在显示输出后关闭 然后第二个窗口保持打开状
  • 如果数据库发生变化,自动刷新内容

    当 mysql 数据库表更改时 如何自动将数据库行 PHP 的值添加到页面 而不刷新页面本身 所以 它有点像这样 自动刷新浏览器以响应文件系统更改 but当数据库发生变化时 不要刷新浏览器来更改文件系统 而是更新内容 而不刷新任何内容 谢谢
  • 使用Session存储Datatable

    目前 我们使用会话在页面中存储数据表 这样我们就不必一次又一次地访问数据库来获取相同的数据表 但我担心它会占用服务器内存 如果有一天大量用户登录 服务器的响应会变慢 我们的应用程序也可能崩溃 请告诉我将数据表存储到会话中是个好主意还是我们应
  • flex / bison:如何在同一输入文件上切换两个词法分析器

    我如何移交打开的文件 例如由另一个扫描仪读取到下一个扫描仪 并将其交给解析器 Flex 缓冲区无法轻松地从一台扫描仪传输到另一台扫描仪 许多细节对于扫描仪来说是私有的 需要进行逆向工程 从而导致可维护性的丧失 然而 只要语义类型兼容 将两个
  • 在辅助监视器上运行单独的应用程序

    Android 支持将应用程序渲染到辅助屏幕 4 2 中添加 但是否可以在主显示器上运行一个应用程序 在辅助显示器上运行另一个应用程序 Android SDK 附带一个Presentation允许前台活动在外部显示器上显示替代内容的类 这是
  • 远程:致命:内存不足,使用 post-receive 挂钩在 git Push 上重新分配失败

    当我做git push remotename branchname到我与 1and1 共 享主机上的远程时 我收到以下错误消息 Counting objects 7 done Delta compression using up to 8
  • 当混合中有新行字符时,UITextView firstRectForRange 不起作用

    我使用此方法将 NSRange 转换为 CGRect 因为它与 UITextView 相关 CGRect frameOfTextRange NSRange range inTextView UITextView textView UITex
  • Spring Data Neo4J 存储库 findAll() 导致 nullpointerException

    我制作了一个简单的存储库 其中包含系统中的所有人员 一切似乎都工作正常 我可以根据给定的键和值添加 删除甚至检索单个人员 但由于某种原因我无法直接检索存储在存储库中的所有人员 我尝试使用 findAll 方法来完成此操作 该方法应该返回一个
  • IIS不使用用户环境变量

    我将 NET Core 应用程序部署到同一服务器两次 一次用于 QA 一次用于生产 目前 我让他们每个人都使用不同的本地用户来运行 IIS 应用程序池 并相应地将 ASPNETCORE ENVIRONMENT 变量设置为 qa 和 生产 这
  • java.lang.OutOfMemoryError:调用 Files.readAllBytes 时直接缓冲内存

    我有以下代码 旨在读取目录并将其压缩到 tar gz 存档中 当我将代码部署到服务器上并使用一批文件对其进行测试时 它在前几个测试批次中工作 但在第 4 或第 5 批次之后 它开始持续给出 java lang OutOfMemoryErro
  • 从数组中删除负数

    我有一个来自数据库的数组 它从一组元素中获取所有 id 然而 它似乎也从发生的一些后端事件中获取了一些负 ID 并且它破坏了我需要对这些 id 执行的操作 在循环数组并将其放入应用程序之前 有没有办法从数组中删除这些负 ID 在我抓住它们之
  • 使用 AVFoundation 框架 iPhone 进行视频录制?

    我正在借助示例代码开发一个应用程序2010 年全球开发者大会AVCamDemo 示例 在应用程序中 我需要从 iPhone 的前置摄像头录制视频 但由于我的地方没有新的 iPhone 4 我无法正确测试代码 如果有人能给我提示 无论我是否朝
  • 我在 pyqt5 程序中使用 QDoubleValidator 但它似乎不起作用

    我创建了一个 QWidget 对象 其中有一些 lineEdit 并且我打算向它们添加一些约束 因此我实现了 QDoubleValidator 对象 以下是我的代码中的相关部分 self lineEdit taxRate QLineEdit
  • Python 和 Selenium - 离开页面时禁用警报

    Using Python 3 and Chrome驱动程序 假设一个自动化的 Python 程序正在网上冲浪 从不同的来源获取内容 假设这些网站中的任何一个触发了 您确定要离开此页面吗 alert 关键词 any 以随机方式 这些网站 Qu
  • 结构化数据(微观数据)和嵌入项目

    我想使用 Microdata 和 Schema org 来定义我的网页的主要内容 所以我做了这样的事情 div div div div
  • 将字符串从 C# 编组到 C++

    我是微软世界的新人 我在尝试将简单的字符串从 c 传递到 dll c 时遇到很多问题 我读过很多帖子和文档 但问题是一样的 C code extern C declspec dllexport int Init long l char ur