*********高分求教Api问题***********[UP有分]

gaoqi5037 2002-05-23 11:29:35
我想往一个指定窗口(外部程序Hwnd已知)中SendMessage[Ctrl+S]希望给出相关代码.

注:
AllApi和袁飞的Api工具我都有.那上面的代就不用贴了
...全文
35 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
dyx 2002-05-24
  • 打赏
  • 举报
回复
up
handsomge 2002-05-24
  • 打赏
  • 举报
回复
好象SendKeys就可以吧,只是需要先把目标窗口激活
rivershan 2002-05-24
  • 打赏
  • 举报
回复
up~
dyugao 2002-05-24
  • 打赏
  • 举报
回复
up不会
Dickson 2002-05-24
  • 打赏
  • 举报
回复
up
gaoqi5037 2002-05-24
  • 打赏
  • 举报
回复
自已UP一下.
jaidy 2002-05-23
  • 打赏
  • 举报
回复
up
chenyu5188 2002-05-23
  • 打赏
  • 举报
回复
我也来UP一下,不知能否得到2分呢???

呵呵…………
ql_mf 2002-05-23
  • 打赏
  • 举报
回复
UP
funboy88 2002-05-23
  • 打赏
  • 举报
回复
up
kevincomein 2002-05-23
  • 打赏
  • 举报
回复
' *** Place the following code in a module. ***

' This function compensates for the fact that the AddressOf operator
' can only be used in a function call. It returns the parameter
' passed to it.
Public Function DummyFunc(ByVal param As Long) As Long
DummyFunc = param
End Function

' This function is the callback function for the dialog box. It sets
' the selected folder to C:\StartHere when the box is initialized.
Public Function BrowseCallbackProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal lParam As Long, ByVal lpData As Long) As Long
Dim pathstring As String ' name of path to set by default
Dim retval As Long ' return value

' If the BFFM_INITIALIZED message is received, set the
' default selection to C:\StartHere.
Select Case uMsg
Case BFFM_INITIALIZED
pathstring = "C:\StartHere" ' the path to make the default selection
' Send a message to the dialog box telling it to select this path.
' Note the use of ByVal and the CLng function here.
retval = SendMessage(hwnd, BFFM_SETSELECTION, ByVal CLng(1), ByVal pathstring)
End Select
BrowseCallbackProc = 0 ' the function should always return 0
End Function

' *** Place the following code where you want to open the ***
' *** Browse for Folder dialog box. ***
Dim bi As BROWSEINFO ' structure passed to the function
Dim pidl As Long ' PIDL to the user's selection
Dim physpath As String ' string used to temporarily hold the physical path
Dim retval As Long ' return value

' Initialize the structure to be passed to the function.
bi.hwndOwner = Form1.hWnd ' window Form1 is the owner of the dialog box
' Specify the My Computer virtual folder as the root
retval = SHGetSpecialFolderLocation(Form1.hWnd, CSIDL_DRIVES, bi.pidlRoot)
' Make room in the buffer to get the [virtual] folder's display name
bi.pszDisplayName = Space(260)
bi.lpszTitle = "Please choose a folder." ' Message displayed to the user
bi.ulFlags = 0 ' no flags are needed here
' Identify the callback function to use for the dialog box. Note
' how our DummyFunc is needed because AddressOf only works
' inside a function call.
bi.lpfn = DummyFunc(AddressOf BrowseCallbackProc)
bi.lParam = 0 ' the callback function here doesn't need this
bi.iImage = 0 ' this will be set by the function

' Open the Browse for Folder dialog box.
pidl = SHBrowseForFolder(bi)
' If the user selected something, display its display name
' and its physical location on the system.
If pidl <> 0 Then
' Remove the empty space from the display name variable.
bi.pszDisplayName = Left(bi.pszDisplayName, InStr(bi.pszDisplayName, vbNullChar) - 1)
Debug.Print "The user selected: "; bi.pszDisplayName
' If the folder is not a virtual folder, display its physical location.
physpath = Space(260) ' make room in the buffer
retval = SHGetPathFromIDList(pidl, physpath)
If retval = 0 Then
Debug.Print "Physical Location: (virtual folder)"
Else
' Remove the empty space and display the result.
physpath = Left(physpath, InStr(physpath, vbNullChar) - 1)
Debug.Print "Physical Location: "; physpath
End If
' Free the pidl returned by the function.
CoTaskMemFree pidl
End If
devspace 2002-05-23
  • 打赏
  • 举报
回复
利用管道函数,让父进程继承子进程管道句柄,自己定义消息编号,
再用sengmessage发消息,但是要给不是自己写的程序发消息的话,
就帮不上忙了,我对api还不是很熟,代码懒得写,抱歉,或者查msdn
也行呵
gaoqi5037 2002-05-23
  • 打赏
  • 举报
回复
自已UP一下
gaoqi5037 2002-05-23
  • 打赏
  • 举报
回复
Ctrl+S 是另一个程序的快捷键
我想在我自做的程序中 让别的程序执行Ctrl+S的操作
bitsoft 2002-05-23
  • 打赏
  • 举报
回复
你都是高手了,岂敢班门弄斧,不知要Send一个什么Message?

1,485

社区成员

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

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