Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

修改源码导出新的dll后,xcode工程导出报错,像是IL2CPP转方法报错了 IFix.Core.EvaluationStackOperation::ToObject #18

Closed
yellow001 opened this issue Sep 23, 2019 · 4 comments

Comments

@yellow001
Copy link

抱歉打扰了,以下是我遇到的问题

因为是老项目,在Inject的时候报了个错:too many internal methods ,于是找到源码修改了下面部分,把 ushort 改成了 int
1

重新生成解决方案后,我把Debug目录里面的 IFix.exe 和 IFix.Core.dll复制到了工程下,Inject无问题,但是后面导出xcode的时候就报错了

2

3

看起来像是 IL2CPP在 转换 c++ 的过程中出现了什么问题。

重新执行 build_for_unity.sh 似乎也没有解决。

是不是直接生成的解决方案下的dll不行?是否除了改代码还要执行别的什么操作?

万分感谢!!!

@chexiongsheng
Copy link
Collaborator

1、别乱改代码,那个short不能改为int;
2、别用vs编译,按首页安装步骤来编译安装

@chexiongsheng
Copy link
Collaborator

too many internal methods 可以通过减少注入方法来解决,第三方库这些一般可以去掉。

@yellow001
Copy link
Author

谢谢大佬解答~

@yellow001
Copy link
Author

再请教下为何不能改成int呢?是不是还要修改其他地方?还是说虚拟机有限制?

1、别乱改代码,那个short不能改为int;
2、别用vs编译,按首页安装步骤来编译安装

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants