Jag kör följande kod. Hej, Tror du det funkar??Placera främmande formulär always on top.
<code>
'Redigera datalänk
'
'
'Öppna form för redigering av datalänk
'
'oledb32.dll och oledb32r.dll måste finnas i app.path
'dbc.dsl måste finnas i app.path\DBx
'
'
Dim Path As String
Path = App.Path & "\DBx\DBc.dsl"
Shell "Rundll32.exe oledb32.dll,OpenDSLFile " & Path
Dim dslHwnd As Long
dslHwnd = GetActiveWindow
Call SetWindowTopMost(dslHwnd)
</code>
Det verkar inte funka. Hur får man tag i handle (hWnd) till det fönster som öppnas
med koden ovan?
[Peter.H]Sv: Placera främmande formulär always on top.
> <b> Det verkar inte funka. Hur får man tag i handle (hWnd) till det fönster som öppnas med koden ovan? </b>
<code>
Dim Path As String
Dim dslHwnd As Long
Path = App.Path & "\DBx\DBc.dsl"
dslHwnd = Shell ("Rundll32.exe oledb32.dll,OpenDSLFile " & Path)
Call SetWindowTopMost(dslHwnd)
</code>
// JohanSv:Placera främmande formulär always on top.
SHELL
Runs an executable program and returns a Variant (Double) representing the program's task ID if successful, otherwise it returns zero.
är task ID = hWnd ???
Nåja jag löste det på ett annat sätt.
<code>
'Sätt fönster topmost
Dim dslHwnd As Long
Dim ret As String
ret = "Egenskaper För Datalänk"
dslHwnd = FindWindow(vbNullString, ret)
Call SetWindowTopMost(dslHwnd)
</code>
[Peter.H]