程序不知道错在哪里?(DLL的调用问题)

zsabc 2003-08-19 10:36:51
以下是vs2003环境下的vb.net windows应用程序,目的是获取标题为“未定标题-记事本”的窗口的句柄,调整窗口大小,将其移动到屏幕左上角。运行程序后,打开的记事本窗口却没有反应,不知错在哪里,希望大家帮帮忙,谢谢!

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim hWnd As Integer = FindWindow(Nothing, "未定标题-记事本")
If hWnd <> 0 Then MoveWindow(hWnd, 0, 0, 600, 300, 1)
End Sub

Private Declare Function FindWindow Lib "USER32" _
Alias "FindWindowW" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Integer
Private Declare Function MoveWindow Lib "USER32" Alias "MoveWindowW" _
(ByVal hWnd As Integer, ByVal x As Integer, ByVal y As Integer, _
ByVal nWidth As Integer, ByVal nHeight As Integer, _
ByVal bRepaint As Integer) As Integer
...全文
29 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
hpfeng 2003-08-19
  • 打赏
  • 举报
回复
你根本就没有打开记事本嘛
zsabc 2003-08-19
  • 打赏
  • 举报
回复
非常感谢!
layershow 2003-08-19
  • 打赏
  • 举报
回复
Private Declare Function FindWindow Lib "USER32" _
Alias "FindWindowA" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Integer
Private Declare Function MoveWindow Lib "USER32" Alias "MoveWindow" _
(ByVal hWnd As Integer, ByVal x As Integer, ByVal y As Integer, _
ByVal nWidth As Integer, ByVal nHeight As Integer, _
ByVal bRepaint As Integer) As Integer

'Code

Dim hWnd As Integer = FindWindow(Nothing, "未定标题 - 记事本")

If hWnd <> 0 Then MoveWindow(hWnd, 0, 0, 600, 300, 1)

主要是声明那里,记得改一下

第一个是FindWindowA , 第二个是MoveWindow
Alias Dll的入口

工作正常.呵呵

郁闷。回贴总超时
layershow 2003-08-19
  • 打赏
  • 举报
回复
哦?
我一会儿试一下VB.NET的

这个是我写着玩的Win32程序

HWND hWnd = FindWindow(NULL,"未定标题 - 记事本");
if (hWnd > 0)
{
hWndButton1 = CreateWindow("BUTTON", "one", WS_VISIBLE | WS_CHILD | BS_FLAT | BS_RIGHTBUTTON , 10, 10, 50, 20, hWnd, NULL, hInstance, NULL);
}

它就在记事本的文本区上加一个按钮.呵呵,但是不能点
zsabc 2003-08-19
  • 打赏
  • 举报
回复
to 绿叶兄:
还能帮我想想办法吗?最好先能在自己机器上运行通过,不胜感激!
zsabc 2003-08-19
  • 打赏
  • 举报
回复
to 绿叶兄:
我改成:"未定标题 - 记事本" <----横线左右都加上空格了
也不行啊
layershow 2003-08-19
  • 打赏
  • 举报
回复
呵呵. 以上代码你没Copy错吧?
反正我没试,不过我可以告诉你
记事本的标题是:"未定标题 - 记事本" <----横线左右都有个空格. ^_^
我以前试过的
标题不对,所以找不到窗口呀.呵呵
layershow 2003-08-19
  • 打赏
  • 举报
回复
呵呵. 以上代码你没Copy错吧?
反正我没试,不过我可以告诉你
记事本的标题是:"未定标题 - 记事本" <----横线左右都有个空格. ^_^
我以前试过的
标题不对,所以找不到窗口呀.呵呵
zsabc 2003-08-19
  • 打赏
  • 举报
回复
有哪位高手肯帮我忙呢?
zsabc 2003-08-19
  • 打赏
  • 举报
回复
记事本窗口我事先已经打开了
zsabc 2003-08-19
  • 打赏
  • 举报
回复
有哪位高手知道问题的原因吗?如何才能实现呢?
rock29 2003-08-19
  • 打赏
  • 举报
回复
打开笔记本也没用,我刚刚试了,.net调用api就会出现这种奇怪的问题,
可能我们还没研究透。。。。。。。。。。

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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