| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 111 人关注过本帖
标题:请教:ShellExecute命令如何支持字符长度超过255长度时不报错的方法
取消只看楼主 加入收藏
laibinhua
Rank: 2
等 级:论坛游民
威 望:1
帖 子:314
专家分:38
注 册:2010-12-23
结帖率:55.81%
收藏
已结贴  问题点数:10 回复次数:2 
请教:ShellExecute命令如何支持字符长度超过255长度时不报错的方法
请教大佬,用下面方法调用默认浏览器打开一个网址,当字符超出255长时就会报错,请求解决方法
lfilename=ALLTRIM(thisform.edit4.Value)
IF 'http'$lfilename=.t.
  DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,STRING,STRING lpszFile,STRING,STRING,INTEGER
  owjmc=lfilename
  thisform.text1.Value=LEN(owjmc)
  if empty(owjmc)
     return
  ENDIF
  ShellExecute(0,"open","&owjmc",0,0,1)
ENDIF
测试字符串如下:
https://item.*3.0%EF%BC%8810.9%E7%BA%A7%EF%BC%89&skuId=3828658802064&spm=a21n57.1.hoverItem.9&utparam=%7B%22aplus_abtest%22%3A%2214fdba949766f512ee012df4be4f70d0%22%7D&xxc=taobaoSearch
搜索更多相关主题的帖子: 长度 字符 STRING 方法 报错 
7 天前 10:19
laibinhua
Rank: 2
等 级:论坛游民
威 望:1
帖 子:314
专家分:38
注 册:2010-12-23
收藏
得分:0 
回复 楼主 laibinhua
网上找了个方法也不行
lfilename=ALLTRIM(this.Parent.text4.Value)
IF 'http'$lfilename=.t.
  * 声明 Unicode 版本的 ShellExecuteW
  DECLARE INTEGER ShellExecuteW IN shell32.DLL ;
    INTEGER hwnd, ;
    STRING lpOperation, ;
    STRING lpFile, ;
    STRING lpParameters, ;
    STRING lpDirectory, ;
    INTEGER nShowCmd
      
  owjmc=lfilename
  thisform.text1.Value=LEN(owjmc)
  if empty(owjmc)
     return
  ENDIF
  * 调用 Unicode 版本
  ShellExecuteW(0, "open", owjmc, "", "", 1)
ENDIF
7 天前 10:26
laibinhua
Rank: 2
等 级:论坛游民
威 望:1
帖 子:314
专家分:38
注 册:2010-12-23
收藏
得分:0 
回复 3楼 csyx
谢谢!解决问题

[此贴子已经被作者于2025-5-12 11:40编辑过]

7 天前 11:30
快速回复:请教:ShellExecute命令如何支持字符长度超过255长度时不报错的方法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023635 second(s), 9 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved