Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mausbewegung mit vbs Script abfragen

Frage Entwicklung VB for Applications

Mitglied: freysup

freysup (Level 1) - Jetzt verbinden

07.03.2008, aktualisiert 18.10.2012, 9406 Aufrufe, 7 Kommentare

Ist es möglich mit vbs die mausbewegung abzufragen?

Wie kann man unter vbs script die mausbewegungen abfragen.
Also um zu sehen ob die maus bewegt wird oder nicht.
Script sollte eine Rückantowrt liefern
Ich hätte nähmlich gerne gesehen ob sich jamnd am Computer befindet oder nicht.
Mitglied: SvenGuenter
07.03.2008 um 16:38 Uhr
und was machst du wenn derjenige nur am tippen ist?

Ich weiß eine Frage ist keien Antwort aber vielleicht kann man das problem auch anders lösen als über das mouseevent
Bitte warten ..
Mitglied: SvenGuenter
07.03.2008 um 16:54 Uhr
Hallo versuch das mal

01.
using System; 
02.
 
03.
using System.Collections.Generic; 
04.
 
05.
using System.ComponentModel; 
06.
 
07.
using System.Data; 
08.
 
09.
using System.Drawing; 
10.
 
11.
using System.Text; 
12.
 
13.
using System.Windows.Forms; 
14.
 
15.
namespace StringPerf 
16.
 
17.
18.
 
19.
public partial class PopupPanel : Form 
20.
 
21.
22.
 
23.
private Boolean doDrag = false; 
24.
 
25.
private Int32 offsetX = 0; 
26.
 
27.
private Int32 offsetY = 0; 
28.
 
29.
public PopupPanel() 
30.
 
31.
32.
 
33.
InitializeComponent(); 
34.
 
35.
36.
 
37.
void Parent_MouseMove(object sender, MouseEventArgs e) 
38.
 
39.
40.
 
41.
42.
 
43.
private void PopupPanel_MouseDown(object sender, MouseEventArgs e) 
44.
 
45.
46.
 
47.
doDrag = true; 
48.
 
49.
offsetX = e.X; 
50.
 
51.
offsetY = e.Y; 
52.
 
53.
54.
 
55.
private void PopupPanel_MouseUp(object sender, MouseEventArgs e) 
56.
 
57.
58.
 
59.
doDrag = false; 
60.
 
61.
62.
 
63.
private void PopupPanel_MouseMove(object sender, MouseEventArgs e) 
64.
 
65.
66.
 
67.
if (doDrag) 
68.
 
69.
70.
 
71.
this.Location = new Point(MousePosition.X - offsetX, MousePosition.Y- offsetY); 
72.
 
73.
74.
 
75.
76.
 
77.
78.
 
79.
}
Bitte warten ..
Mitglied: bastla
07.03.2008, aktualisiert 18.10.2012
@SvenGuenter

Ich muss gestehen, das ist eines der interessantesten VBScripts seit jenem hier ...

Grüße
bastla
Bitte warten ..
Mitglied: misterdemeanor
08.03.2008 um 10:02 Uhr
Ich muss gestehen, das ist eines der interessantesten VBScripts

Hehe, wirklich nettes VBScript Dann würd Dir das hier sicher auch gefallen, bastla:

01.
<System.Runtime.InteropServices.ComVisible(True)> _ 
02.
 <Microsoft.VisualBasic.ComClass()> Public Class MousePosition 
03.
  Private m_Point As POINTAPI 
04.
  Private m_LastPoint As POINTAPI 
05.
  Private m_Interval As Double 
06.
  Private m_HasMoved As Boolean 
07.
  Private WithEvents t As System.Timers.Timer 
08.
 
09.
  Private Structure POINTAPI 
10.
    Public x As Int32 
11.
    Public y As Int32 
12.
  End Structure 
13.
 
14.
  Private Declare Auto Function GetCursorPos Lib "user32.dll" (ByRef lpPoint As POINTAPI) As Int32 
15.
 
16.
  Public Sub New() 
17.
    GetCursorPos(m_Point) 
18.
    m_LastPoint = m_Point 
19.
    m_Interval = 3000 
20.
    m_HasMoved = True 
21.
    t = New System.Timers.Timer(m_Interval) 
22.
    't.Start() 'ggfls. automatisch starten 
23.
  End Sub 
24.
 
25.
  Public ReadOnly Property X() As Int32 
26.
    Get 
27.
      GetCursorPos(m_Point) 
28.
      Return m_Point.x 
29.
    End Get 
30.
  End Property 
31.
  Public ReadOnly Property Y() As Int32 
32.
    Get 
33.
      GetCursorPos(m_Point) 
34.
      Return m_Point.y 
35.
    End Get 
36.
  End Property 
37.
  Public ReadOnly Property HasMoved() As Boolean 
38.
    'Gibt an ob sich die Mauscursor-Position im angegebenen Intervall verändert hat. 
39.
    Get 
40.
      Return m_HasMoved 
41.
    End Get 
42.
  End Property 
43.
  Public Property Interval() As Single 
44.
    Get 
45.
      Return m_Interval 
46.
    End Get 
47.
    Set(ByVal value As Single) 
48.
      m_Interval = value 
49.
      t.Interval = m_Interval 
50.
    End Set 
51.
  End Property 
52.
  Public Sub StartMouseWatcher() 
53.
    t.Start() 
54.
  End Sub 
55.
  Public Sub StopMouseWatcher() 
56.
    t.Stop() 
57.
  End Sub 
58.
  Private Sub t_Elapsed(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs) Handles t.Elapsed 
59.
    GetCursorPos(m_Point) 
60.
    If (m_Point.x <> m_LastPoint.x) Or (m_Point.y <> m_LastPoint.y) Then 
61.
      m_HasMoved = True 
62.
    Else 
63.
      m_HasMoved = False 
64.
    End If 
65.
    GetCursorPos(m_LastPoint) 
66.
  End Sub 
67.
End Class
Jaja, ist kein Script, sondern kann in eine VB2005 [Express] Klassenbibliothek eingefügt werden die man dann mit regasm.exe [filename] /tlb registriert. So kann man dann aus beliebigen COM-Clients Objekte davon instanzieren-->CreateObject("AssemblyName.AssemblyProduct")

PS: Vorzugsweise natürlich vorh noch mit einem StrongName versehen und mit dem Schalter /Codebase registrieren.

Registrieren von Assemblys mit COM

BG, Felix -misterdemeanor-

Edited: Anfangs war ja nur die Koordinatenermittlung implementiert...
Bitte warten ..
Mitglied: bastla
08.03.2008 um 13:22 Uhr
Hallo misterdemeanor!

Dann würd Dir das hier sicher auch gefallen, bastla
Tut es auch ...

... ist kein Script, sondern kann in eine VB2005 [Express] Klassenbibliothek eingefügt werden ...
... weil es (wenn auch nicht exakt der ursprünglichen Fragestellung entsprechend) als alternative Variante deklariert und mit "Gebrauchsanleitung" versehen ist - so sehe ich es als ernst zu nehmenden Lösungsvorschlag an.

@freysup
Da VBS auf einen ganz anderen Verwendungszweck ausgerichtet ist, wird eine Umsetzung Deines Vorhabens damit wohl nicht möglich sein ...

Grüße
bastla
Bitte warten ..
Mitglied: misterdemeanor
08.03.2008 um 17:23 Uhr
Hallo bastla,

zugegeben, "Anleitung" ist keineswegs ausführlich und man müsste sich schon noch mit auseinandersetzen. Aber da wäre ich sicher auch noch für Rückfragen da gewesen.

Sicherlich ist es auch so keineswegs eine saubere "COM"-Umsetzung. Vom Frag etext her eine "ernst zu nehmende" Antwort, da stimme ich Dir zu Für diese Einschätzung fühle ich mich sogar wirklich geehrt, sie kommt von Dir!
Für das eigentliche Vorhaben freysup´s --> eine Benutzeraktivität zu ermitteln, sicher auch nicht stolperfrei...genau gesagt ein Mienenfeld.

Was mich aber interessieren würde, wäre Deine generelle Meinung zu meinem "Lösungsansatz"-->.Net ([D]COM) Einsatz in (z.B.) vbScript. Als Batch und Script Guru der Du zweifellos bist würde mich das sehr interessieren. Habe mit Scripting zwar wenig am Hut (größtenteils hier bei Fragen), es wwürde mich wie geschrieben sehr interessieren.

Hoffe das ist Dir nicht zu sehr Off Topic!

BG, Felix -misterdemeanor-
Bitte warten ..
Mitglied: bastla
08.03.2008 um 18:27 Uhr
Hallo misterdemeanor!

Deinen Ansatz habe ich zwar nicht getestet, finde ihn aber sinnvoll, da eben VBS der unmittelbare Zugriff auf Windows-APIs fehlt und aufgrund der freien Verfügbarkeit der VisualStudio-"Express"-Versionen eine Umsetzung Deines Vorschlages auch durchaus "kostengünstig" ist ...

Auch wenn es sicherlich für Fragesteller angenehmer ist, mit bereits installierten Komponenten (also CMD + ev VBS) auszukommen und nicht selbst "Hand anlegen" zu müssen, zeigt aber gerade diese Problemstellung hier (welche ich gar nicht näher kommentieren möchte ), dass es eben für die genannten "einfachen" Mittel Grenzen gibt.

Damit aber die Hürde nicht zu hoch wird, könntest Du ja (wenn Dir einmal besonders langweilig sein sollte ) das Thema in Form eines ("Schritt für Schritt"- ) Tutorials noch ein wenig aufbereiten und damit leichter umsetzbar machen ...

Grüße
bastla

P.S.: Brich Dir keine Verzierungen (wie "Guru") ab - wie meinem Nick zu entnehmen, bin ich ja, im Gegensatz zu Dir, noch nicht einmal Programmierer, sondern nur ein (Basic-)Bastler , der vom einzigen "Guru" hier (Biber), ein wenig "batchen" gelernt hat ...
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Batch & Shell
gelöst VBS Script in eine Textdatei ausgeben (VBS mit Batch zusammenführen) (5)

Frage von Luuke257 zum Thema Batch & Shell ...

VB for Applications
gelöst VBS Script kann Prgramm nicht starten (15)

Frage von C.Boerner zum Thema VB for Applications ...

Windows Server
Aufgabenplanung bringt bei VBS Script immer 0x41301 (14)

Frage von 116480 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...