设为首页收藏本站

 找回密码
 注册
查看: 2688|回复: 5
打印 上一主题 下一主题

最终目标文件编译错误 fatal error Lnk1112:module machine type 'x86' con [复制链接]

Rank: 5Rank: 5

精华
0
UID
2542
积分
937
帖子
275
主题
101
阅读权限
60
注册时间
2008-10-12
最后登录
2021-10-26
跳转到指定楼层
1#
发表于 2015-8-6 16:32:25 |只看该作者 |倒序浏览
本帖最后由 shunlu 于 2015-8-6 16:34 编辑

以下是我将TB自带的双均线系统DualMA作一个小小的改动,为了适应股票交易没有做空的功能,将最后一行:sellshort改成了Sell
Params
        Numeric FastLength(5);
        Numeric SlowLength(20);
Vars
        NumericSeries AvgValue1;
        NumericSeries AvgValue2;
Begin
        AvgValue1 = AverageFC(Close,FastLength);
        AvgValue2 = AverageFC(Close,SlowLength);

        PlotNumeric("MA1",AvgValue1);
        PlotNumeric("MA2",AvgValue2);               
       
        // 集合竞价和小节休息过滤
        If(!CallAuctionFilter()) Return;
       
        If(MarketPosition <>1 && AvgValue1[1] > AvgValue2[1])
        {
                Buy(1,Open);
        }
       
        If(MarketPosition <>-1 && AvgValue1[1] < AvgValue2[1])
        {
                Sell(1,Open);
        }
        //PlotNumeric("PL",Portfolio_TotalProfit);       
End
但是,无法编译成功:
显示:
最终目标文件编译错误
fatal error Lnk1112:module machine type 'x86' conflicts with target machine type 'X64'
然后我将TB系统自带的DaulMA进行编译,仍然是显示上述错误,也就是说,这不是代码写错的问题了,而是另有原因
求教求教!!!
而且我确定,以前用V4版本时,公式可以正常使用的,升了V5才出现这样的问题,而且是在升到WinDOWs7 64位系统后出现的。

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2015-8-6 16:57:15 |只看该作者
与公式代码无关。
先确认自己的机器是多少位的?如果不能确定就下32位的软件好了。
64位的软件不可以放到X86这样的路径下来使用的。。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
2542
积分
937
帖子
275
主题
101
阅读权限
60
注册时间
2008-10-12
最后登录
2021-10-26
3#
发表于 2015-8-6 19:35:26 |只看该作者
机器是WIN7 64位

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
2542
积分
937
帖子
275
主题
101
阅读权限
60
注册时间
2008-10-12
最后登录
2021-10-26
4#
发表于 2015-8-6 19:36:15 |只看该作者
小米 发表于 2015-8-6 16:57
与公式代码无关。
先确认自己的机器是多少位的?如果不能确定就下32位的软件好了。
64位的软件不可以放到X8 ...

机器是WIN7 64位
我已经转到非X86里用了,但还是无法编译

使用道具 举报

Rank: 1

精华
0
UID
213542
积分
1
帖子
1
主题
0
阅读权限
10
注册时间
2015-7-12
最后登录
2022-6-20
5#
发表于 2015-10-13 09:11:23 |只看该作者
我也遇到同样的编译问题。我之前使用的是win7 32位的操作系统,后来把win7升级到64位的系统。在升级的时候,我把user目录下的文件进行了备份。然后把开拓交易者升级到64位系统后再把原来备份的user目录拷贝回去的时候就发生这个问题。公式源代码可以查看,但是编译就出错。我的解决方法是通过64位的开拓交易者把原有的公式备份出来,然后删除原有的user目录,创建原有user目录后再把这个公式导入,然后编译就可以了。具体原因是原有的用户配置中包含的链接参数是32位的参数,但我不知道在哪儿改。使用这个方法的时候要注意原有的一些软件的配置需要保存的要先备份。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
6#
发表于 2015-10-13 09:44:29 |只看该作者
kingofred 发表于 2015-10-13 09:11
我也遇到同样的编译问题。我之前使用的是win7 32位的操作系统,后来把win7升级到64位的系统。在升级的时候 ...

64位与32位的底层动态库是不同的,所以一定不可以将其中一个的user文件夹复制给另外一个使用。。
可以在原软件上,将公式以有源码模式导出后,再导入到新的软件版本里,通过编译即可使用。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-2 07:05

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部