金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 6482|回复: 20

系统升级后vba向Python传参bug

[复制链接]

2

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2021-5-27
曾用名:
发表于 2021-5-27 16:07 来自手机 | 显示全部楼层 |阅读模式
以前一直用的5.31的版本,最近升级到6.10,出现的bug,以前是没有问题的
主要功能是:vba窗口把输入的用户名密码传入Python模块,Python用来连接数据库。截图如下
可以看到vba打印的和Python打印的参数对不上,感觉是强制转成了数字类型?
mmexport1622102331312.jpg
mmexport1622102328431.jpg
mmexport1622102334155.jpg
mmexport1622102339006.jpg
回复

使用道具 举报

34

主题

9006

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2021-5-27 17:19 | 显示全部楼层
6.10的python做了升级改造。需要3.74 64位的python.    原来的python策略最好从新编译下再使用。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2021-5-27
曾用名:
 楼主| 发表于 2021-5-27 17:40 | 显示全部楼层
技术006 发表于 2021-5-27 17:19
6.10的python做了升级改造。需要3.74 64位的python.    原来的python策略最好从新编译下再使用。

已经重新编译了的,还是不行
回复

使用道具 举报

1

主题

843

帖子

853

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2021-5-28 09:24 | 显示全部楼层
最好能简明扼要的给出一段可以呈现问题的代码给我们看一下,这样更方便我们发现和解决问题哦
回复

使用道具 举报

2

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2021-5-27
曾用名:
 楼主| 发表于 2021-5-28 09:24 | 显示全部楼层
技术006 发表于 2021-5-27 17:19
6.10的python做了升级改造。需要3.74 64位的python.    原来的python策略最好从新编译下再使用。

截图202105280923445087..png
又重新写了个例子试了下,感觉是截掉了字符串的前4位?
回复

使用道具 举报

2

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2021-5-27
曾用名:
 楼主| 发表于 2021-5-28 09:33 | 显示全部楼层
技术015 发表于 2021-5-28 09:24
最好能简明扼要的给出一段可以呈现问题的代码给我们看一下,这样更方便我们发现和解决问题哦

我上面重新发了一段简单的
回复

使用道具 举报

1

主题

843

帖子

853

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2021-5-28 09:56 | 显示全部楼层
此生非我有 发表于 2021-5-28 09:33
我上面重新发了一段简单的

请把代码贴过来吧,不要贴图,谢谢
回复

使用道具 举报

2

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2021-5-27
曾用名:
 楼主| 发表于 2021-5-28 10:01 | 显示全部楼层
技术015 发表于 2021-5-28 09:56
请把代码贴过来吧,不要贴图,谢谢

[Visual Basic] 复制代码
Dim pyEnviroment
Sub UserForm1_Initialize()
	Set pyEnviroment = CreateObject("Stock.Python")
	ref = pyEnviroment.ImportModule("jzt_py_test")
	If ref <> 1 Then
		msg = pyEnviroment.GetErrorInfo()
		MsgBox msg
		Set msg = Nothing
		Exit Sub
	End If
End Sub

Sub UserForm1_CommandButton1_Click()
	r = pyEnviroment.CallObject("test", "tt")
	r = pyEnviroment.CallObject("test", "tt111")
	r = pyEnviroment.CallObject("test", "中华人民共和国")
	r = pyEnviroment.CallObject("test", "dk938eicv#8I^&")
End Sub


[Python] 复制代码
# -*- coding: utf-8 -*-

# 该Python代码用于模块定义,供其他Python代码或VBA调用。

from PythonApi import *

def test(param1):
    print(type(param1))
    print(param1)
    return 1
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2021-5-28 10:36 | 显示全部楼层
目前是有点问题,会给开发组提交这个情况
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

1

主题

843

帖子

853

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2021-5-28 10:45 | 显示全部楼层
看到问题了,这次升级到64位系统后,兼容性有所改变,会在下个升级版修正此问题,感谢用户的问题报告
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-16 03:15 , Processed in 0.278944 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表