怎樣實現從VB程式向java窗口發送中文字串

aperyx 2007-06-01 05:03:17
我想實現從VB程式向發java窗口發送中文字串
不知如何實現?請不吝賜教
用sendkeys只能實現發送英文的
...全文
348 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
aperyx 2007-06-25
  • 打赏
  • 举报
回复
自己頂一下,期待解決
aperyx 2007-06-11
  • 打赏
  • 举报
回复
我用GetForegroundWindow的hwnd,但結果是將stext的內容發到窗口的標題
用GetFocus的hwnd沒反應
VBAdvisor 2007-06-08
  • 打赏
  • 举报
回复
sText就是你要发送的字符串。
sText="Who I am?”
aperyx 2007-06-08
  • 打赏
  • 举报
回复
VBAdvisor(Sunlight):
sText 要什麼類型啊?
我用string好象沒效果
aperyx 2007-06-08
  • 打赏
  • 举报
回复
我是把資料往oracle 的程式中輸入,
可以手工用剪貼板粘貼中文輸入.
我有在網上有找一些例子,試過sendmessage 和剪貼板,但都沒有實現我要的結果

VBAdvisor 2007-06-08
  • 打赏
  • 举报
回复
Private Declare Function IsWindowUnicode Lib "user32.dll" (ByVal hWnd As Long) As Long
Private Declare Function SetWindowTextW Lib "user32.dll" (ByVal hWnd As Long, ByVal lpString As Long) As Long
Private Declare Function SetWindowTextA Lib "user32.dll" (ByVal hWnd As Long, ByVal lpString As String) As Long

StrPtr不需要特别申明,VB6支持。

rainstormmaster 2007-06-08
  • 打赏
  • 举报
回复
另外,你的测试程序可以粘贴中文吗?可以的话,建议从剪贴板入手解决
rainstormmaster 2007-06-08
  • 打赏
  • 举报
回复
//rainstormmaster:能告訴怎樣用sendkeys發送中文嗎?

和发送英文没什么区别

我估计可能是编码问题,给个你用的java程序的下载地址
aperyx 2007-06-08
  • 打赏
  • 举报
回复
VBAdvisor(Sunlight):
能給我一個比較完整的例子嗎?
我API不太會用
IsWindowUnicode/StrPtr 我找不到
aperyx 2007-06-08
  • 打赏
  • 举报
回复
Sorry,前幾天硬盤掛了,現在才好
rainstormmaster:能告訴怎樣用sendkeys發送中文嗎?
我用sendkey發送中文到java窗口會出現亂碼現象


VBAdvisor(Sunlight):
VBAdvisor 2007-06-05
  • 打赏
  • 举报
回复
Dim lPtr As Long

If IsWindowUnicode(m_hWnd) Then
If Len(sText) = 0 Then
SetWindowTextW m_hWnd, StrPtr(vbNullString)
Exit Sub
End If
lPtr = StrPtr(sText)
SetWindowTextW m_hWnd, lPtr
Else
If Len(sText) = 0 Then
SetWindowTextA m_hWnd, vbNullString
Exit Sub
End If
SetWindowTextA m_hWnd, sText
End If
VBAdvisor 2007-06-05
  • 打赏
  • 举报
回复
SetWindowTextW for Unicode
SetWindowTextA for English
  • 打赏
  • 举报
回复
或者发送WM_COPYDATA 消息
CathySun118 2007-06-03
  • 打赏
  • 举报
回复
根据窗口句柄,发消息
yangao 2007-06-01
  • 打赏
  • 举报
回复
可以查找到对应窗口的句柄
直接通过API函数发送
SendMessage lngHwndTemp, WM_SETTEXT, 0&, strCode
rainstormmaster 2007-06-01
  • 打赏
  • 举报
回复
//用sendkeys只能實現發送英文的

为什么?
Notepad++ 是一款非常有特色的编辑器,是开源软件,可以免费使用。功能有: ①、内置支持多达 27 种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持 .nfo 文件查看),也支持自定义语言; ②、可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件最具特色的体现之一; ③、可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例,等等; ④、提供数个特色东东,如 邻行互换位置、宏功能,等等...现在网上有很多文件编辑器,这个却是不可多得的一款,不论是日常使用还是手写编程代码,都能让你体会到它独有的优势和方便。 Notepad++ 是在微软视窗环境之下的一个免费的代码编辑器。为了产生小巧且有效率的代码编辑器,这个在GPL许可证下的自由软体开发专案採用 win32 api 和 STL 以 C++ 程式语言撰写成,并且选用功能强大的编辑模组 Scintilla。多亏它的轻巧与执行效率,Notepad++ 可完美地取代微软视窗的记事本。 Notepad++ 的主要功能: 语法高亮度显示及语法摺迭功能 支援的程式语言: C C++ Java C# XML HTML PHP CSS makefile ASCII art (.nfo) doxygen ini file batch file Javascript ASP VB/VBS SQL Objective-C RC resource file Pascal Perl Python Lua TeX TCL Assembler Ruby Lisp Scheme Properties Diff Smalltalk Postscript VHDL Ada Caml AutoIt KiXtart Matlab Verilog Haskell InnoSetup CMake YAML 列印所见即所得(WYSIWYG) 如果你有彩色印表机,你可以把你的原始码以多种颜色列印出来。 用户自定程式语言 用户可自定程式语言:自定的程式语言不仅有语法高亮度显示功能,而且有语法摺迭功能功能。 註解关键字及运算符号亦可自定。详情请参考用户自定程式语言线上辅助 ( 画面一, 画面二, 画面三, 画面四 )。 字词自动完成功能(Auto-completion) 用 户能做自己的API列表(或从下载专区下载你需要的api档案) 。一旦api档案建立完成且在正确的路径系统,键入Ctrl+Space(你可以修改这个键盘捷径)启动字词自动完成功能(参考字词自动完成功能画面)。 欲知更详尽的资讯,请参考字词自动完成功能线上辅助。 支援同时编辑多重文件 你可以同时开启多页面来编辑。 支援多重视窗同步编辑 用户可同时有两个视窗对比排列。你不但能开启两个不同文件在分别两个不同的视窗内 (画面), 并且能开启一个单独文件在两个不同的视窗内(clone mode)进行同步编辑。同步编辑的成果将在两个的视窗内同时更新。请参考同步编辑画面。 支援Regular Expression搜寻及取代 用户可用Regular Expression来搜寻及取代一个字串。 完全支援拖曳功能 你可用拖曳功能来开启文件。你也可以用拖曳功能来变换开启文件的位置。 你甚至可拖曳开启文件从一个视窗到另一个视窗。 内部视窗位置可任意移动 自动侦测开启档案状态 如果外部修改(或删除)Notepad++已开启档案,用户将会被通知更新档案内容(或移除档案)。 放大与缩小功能 不需要多做介绍,画面将说明一切。 支援多国语言 支援中日韩视窗环境,及阿拉伯语与希柏来文的视窗环境。请参考 Notepad++ 在中文视窗下,阿拉伯语视窗下以及希柏来文视窗下的画面。 书籤 用户可用滑鼠点击书籤边行(书籤边行位于列数边行右方)或使用键盘捷径Ctrl+F2来标明或移除书籤。使用键盘捷径F2到下一个书籤或Shift+F2到上一个书籤。如欲清除所有书籤,使用选单 寻找->清除所有书籤 。请参考画面. 高亮度括号及缩排辅助 当插字游标(caret)移至下列字元{ } [ ] ( )旁侧时, 此字元与远方相对应的字元以及缩排辅助(如果存在的话)将会以高亮度来显示。请参考画面一, 画面二。

1,488

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧