在unity编辑器中,导出/保存文件,使用EditorUtility.SaveFilePanel,代替运行时的方法。
在项目中(运行时),已经有个功能是导出文件到本地磁盘,使用的方法是常见的DllImport("Comdlg32.dll")并进行封装。详情可参考:https://github.com/gkngkc/UnityStandaloneFileBrowser
后来,又出现了个需求,是在编辑器的编辑态中,增加一个导出文件到本地磁盘的功能给开发人员使用,就也沿用了上述封装给运行态使用的方法。
但是,导出完文件,再运行,会导致unity编辑器崩溃(版本2020.1.6f1)
报错信息如下,
Stack Trace of Crashed Thread 15968:
0x00007FFCEEDF2473 (combase) RoGetActivationFactory
0x00007FFCEEDF89B1 (combase) RoGetActivationFactory
0x00007FFCEEDF9AAB (combase) RoGetActivationFactory
0x00007FFCEEDF9CF3 (combase) CoCreateInstance
ERROR: SymGetSymFromAddr64, GetLastError: '试图访问无效的地址。
在网上查了一会儿,一头雾水,没弄明白是为什么。
但是好在发现项目中的一个插件也有类似功能,查看代码发现他用的是EditorUtility.SaveFilePanel
然后我就也改用这个方法,目前还没有崩溃的现象发生。
在unity编辑器中,导出/保存文件,使用EditorUtility.SaveFilePanel,代替运行时的方法。的更多相关文章
- 【Unity优化】如何实现Unity编辑器中的协程
Unity编辑器中何时需要协程 当我们定制Unity编辑器的时候,往往需要启动额外的协程或者线程进行处理.比如当执行一些界面更新的时候,需要大量计算,如果用户在不断修正一个参数,比如从1变化到2,这种 ...
- 在Google Maps中导出KML文件
教你一招:在Google Maps中导出KML文件 2011-07-11 15:24:49 4819 人阅读 作者:上方文Q 编辑:上方文Q [复制链接] [爆料] Google Earth的一大乐趣 ...
- 【Unity优化】怎样实现Unity编辑器中的协程
Unity编辑器中何时须要协程 当我们定制Unity编辑器的时候,往往须要启动额外的协程或者线程进行处理.比方当运行一些界面更新的时候,须要大量计算,假设用户在不断修正一个參数,比方从1变化到2.这种 ...
- C#中WinFrom保存文件SaveFileDialog类的使用方法
C#中WinFrom保存文件SaveFileDialog类的使用方法 使用的命名空间是:System.Windows.Forms; 常用属性: Title:保存对话框的标题,默认为"另存 ...
- [译]如何在Unity编辑器中添加你自己的工具
在这篇教程中你会学习如何扩展你的Unity3D编辑器,以便在你的项目中更好的使用它.你将会学习如何绘制你自己的gizmo,用代码来实现创建和删除物体,创建编辑器窗口,使用组件,并且允许用户撤销他们所作 ...
- 【Unity】2.2 Unity编辑器中的常用菜单项
分类:Unity.C#.VS2015 创建日期:2016-03-26 Unity 5.3.4编辑器共提供了7个主菜单项,这一节主要学习其中的常用项. 一.File 1.基本功能 New Scene:新 ...
- Solidworks 2016中导出URDF文件
安装SolidWorks to URDF exporter插件 下载SolidWorks to URDF Exporter插件后按照网站上的步骤进行安装(目前该插件已经在Win 7 64位系统+Sol ...
- vmware vSphere client中,选择文件->部署OVF模板,报错处理方法
在vmware vSphere client中,选择文件->部署OVF模板,选择指定的OVA文件,按步骤进行,则会出现这样的错误:此OVF软件包使用了不受支持的功能.OVF软件包需要不支持的硬件 ...
- Android中的gen文件为空或者不存在的处理方法
Android中的gen文件时链接程序和XML中资源定义的桥梁,所以如果gen文件夹为空可能有以下的几个原因: 1.XML文件错误,这时可以检查res文件夹中的文件是否有错误 2.导入新的Androi ...
- java中exception和error有什么区别,运行时异常和一般异常有什么区别
1.exception和error都是继承了throwable类,在java中只有throwable类型的实例才可以被抛出(throw)或者捕获(catch),它是异常处理机制的基本组成类型 2.ex ...
随机推荐
- 【当年笔记】集合之Queue队列
1)Queue 分类 双端队列:双端队列(Deque)是 Queue 的子类也是 Queue 的补充类,头部和尾部都支持元素插入和获取. 阻塞队列:阻塞队列指的是指添加或删除元素时,如果没有成功,会阻 ...
- uniapp引入腾讯云直播助手插件
在uniapp开发小程序,引入腾讯云直播助手插件 1.在manifest.json文件中,找到微信小程序特有相关,声明要使用的插件 /* 小程序特有相关 */ "mp-weixin" ...
- node 基础
使用 vscore 写 node 的配置文件 { "version": "0.2.0", "configurations": [ { &qu ...
- GDAL 安装
命令总和 add-apt-repository ppa:ubuntugis/ppa apt-get update apt-get install gdal-bin apt-get install li ...
- debian11命令行安装字体
一.需要用到三条命令mkfontscale/mkfontdir/fc-cache这三条命令属于两个软件包mkfontscale/mkfontdir属于xfonts-utils包,fc-cache命令属 ...
- charles的坑
https://blog.csdn.net/qq_42191801/article/details/80288804 https://zhuanlan.zhihu.com/p/108960019 1. ...
- SqlServer 优化的技巧
1.避免使用 select * select * 不会走覆盖索引,会出现大量的回表操作,从而导致SQL的查询性能很低 2.用union all 代替 union 1.使用union后,可以获取排重复后 ...
- Java8 提供CompletableFuture来简化高并发异步处理编程
(摘录自狂乱的贵公子)所谓异步调用其实就是实现一个可无需等待被调用函数的返回值而让操作继续运行的方法.在 Java 语言中,简单的讲就是另启一个线程来完成调用中的部分计算,使调用继续运行或返回,而不需 ...
- 压缩打包,tar
压缩打包命令 创建压缩包 tar -zcvf /home/xxxx.tar.gz /xahot 解压 tar -zxvf xxx.tar.gz gzip xxxx 自动变为 xxx.gz
- jquery获取单选按钮选中的值
jQuery 取选中的radio的值方法 var val=$('input:radio[name="sex"]:checked').val(); 附三种方法都可以: $('inpu ...