Ενας τρόπος που χρησιμποιώ εγώ σε 2003 είναι ο εξής:
Χρειάζεσαι τις παρακάτω functions για να μπορείς να κάνεις copy ένα file από τo desktop στο device και ανάποδα
Private Declare Function DESKTOPTODEVICE Lib _
"C:\Program Files\Microsoft ActiveSync\adofiltr.dll" Alias "DESKTOPTODEVICE" _
(ByVal DesktopLocation As String, ByVal TableList As String, ByVal Sync As Boolean, _
ByVal Overwrite As Int16, ByVal DeviceLocation As String) As Integer
Private Declare Function DEVICETODESKTOP Lib _
"C:\Program Files\Microsoft ActiveSync\adofiltr.dll" Alias "DEVICETODESKTOP" _
(ByVal DesktopLocation As String, ByVal TableList As String, ByVal Sync As Boolean, _
ByVal Overwrite As Int16, ByVal DeviceLocation As String) As Integer
Με αυτό τον τρόπο μπορείς να κάνεις Copy ένα Xml File που έχει πορκύψει από την εφαρμογή σου με εγγραφές που θέλεις να στείλεις στο Device.
Από το device μπορείς να ανοίξεις το XML και να διαχειριστείς τις εγγραφές σου.
Αν θέλεις αυτό να γίνεται αυτόματα από το Desktop , τότε χρειάζεσαι τα Windows mobile powertoys http://msdn.microsoft.com/mobility/windowsmobile/downloads/default.aspx#ptoys
Με το RapiStart.exe μπορείς να τρέξεις μία εφαρμογή στο PocketPC από το Desktop με τον εξής τρόπο:
Dim myProcess As New Process
Dim myProcessStartInfo As New System.Diagnostics.ProcessStartInfo("""rapistart.exe""", "/wait ""<To path στο πρόγραμμα του Pocket PC>""")
myProcessStartInfo.CreateNoWindow = True
myProcessStartInfo.UseShellExecute = False
myProcessStartInfo.RedirectStandardError = True
myProcess.StartInfo = myProcessStartInfo
myProcess.Start()
Dim Responding As Boolean = False
Try
Responding = myProcess.Responding()
Catch ex As Exception
End Try
If Not Responding Then
MsgBox("Δεν μπορώ να συνδεθώ στη συσκευή")
Else
MsgBox("Connected")
End If
Ανακεφαλαιώνοντας
Σε μία Windows εφαρμογή διαχειρίζεσαι τα δεδομένα που θέλεις να στείλεις ή να λάβεις από το Device σε XML.
Σε μία Pocket PC εφαρμογή διαχειρίζεσαι τα δεδομένα που θέλεις να στείλεις ή να λάβεις από το Desktop σε XML.
Με το DESKTOPTODEVICE και DEVICETODESKTOP κάνεις το Συγχρονισμό (Copy τα XML)
Mε το RAPISTART από το Desktop εκτελείς την εφαρμογή του Device.
Οταν μπορέσω θα κάνω post ένα πλήρες παράδειγμα.
Σταύρος Βαλσάμης
Προγραμματιστής