Connection windows à unix

phraid - 19 juin 2001 à 01:13
 Olivier - 19 juin 2001 à 15:14
Bonjour,
Je suis novice sur le sujet, mais j'aimerai connecter un ordinateur sytéme d'exploitation windows 98, à un ordinateur sytéme d'exploitation unix, afin d'envoyer une ligne de commande sur le systéme unix. De même, je voudrais établir une communication entre les deux machines. La documentation en la matiére est trés pauvre, et je compte sur vous. Merci

4 réponses

Quand tu parle d'Unix tu parle que quelle system précisement
0
Quand tu parle d'Unix tu parle que quelle system précisément ?
0
salut, je ne comprend pas vraiment ta question, c'est koi exactement envoyé une "ligne de commande" ?.
si tu utilises linux -et non unix- tu peux utilisé le démon samba pour interconnecter windows et linux.
@+
0
Je me suis déjà posé la question, mais les projets urgents ont fait que je n'ai jamais pu mettre en pratique.
Côté Unix il faut écrire un programme serveur avec socket (je crois qu'il faut compiler avec l'option -s) et côté pc il faut ajouter un contrôle Winsock.
Il faut choisir un numéro de port qui n'est occupé par personne et l'attribuer aux sockets des deux côtés.
Selon la complexité de ce que tu veux faire, il faux créer une sorte de protocole d'échange. Ca j'ai expérimenté avec le contrôle Winsock entre deux pc.
Ci-après un extrait d'application: les 2 machines s'échangent des chaînes de caractères dont le premier mot permet de savoir à quel point du dialogue on est. Le but est de pouvoir échanger les données d'un tableau de taille variable (ce tableau contient les propriétés des contrôles affichés sur le pc serveur que je veux reproduire sur le pc client).
Ce n'est pas forcément la bonne façon d'utiliser les sockets mais ça marche!

Private Sub WsckJvd_DataArrival(ByVal bytesTotal As Long)
Dim JvdData As String
Dim JvdDataHeader As String
Dim IIndex As Integer
Static Ipassage As Byte
WsckJvd.GetData JvdData
Labdialogue.Caption = JvdData
IIndex = InStr(JvdData, " ")
If IIndex <> 0 Then
JvdDataHeader = Mid(JvdData, 1, IIndex - 1)
Else
JvdDataHeader = JvdData
End If
If LServeur Then
Select Case JvdDataHeader
Case "Vidage"
ComVidage_Click
Case "Information"
LWinSockEnCours = True
ComInfo_Click
Case "PretRecevoir"
LTailleOK = False
Prepa_TabLabInfo
WsckJvd.SendData "Taille " & Str(TailleTab)
Do While Not LTailleOK
DoEvents
Loop
For IIndex = 0 To TailleTab - 1
LWSckRecu = False
WsckJvd.SendData "Data " & TabLabInfo(IIndex)
Do While Not LWSckRecu
DoEvents
Loop
Next IIndex
WsckJvd.SendData "FinData"
LWinSockEnCours = False
Case "TailleOK"
LTailleOK = True
Case "Recu"
LWSckRecu = True
Case "ComOK"
ListeFichiers.ComOK_Click
Case "CheckDwnL"
IIndex = Val(Mid(JvdData, InStr(JvdData, " ") + 1))
ListeFichiers.CheckDwnL_Click (IIndex)
Case "CheckDel"
IIndex = Val(Mid(JvdData, InStr(JvdData, " ") + 1))
ListeFichiers.CheckDel_Click (IIndex)
Case Else
End Select
Else 'Client
Select Case JvdDataHeader
Case "Listening"
If Lvidage Then
WsckJvd.SendData "Vidage"
Else
WsckJvd.SendData "Information"
End If
Case "PretEmettre"
Ipassage = 0
WsckJvd.SendData "PretRecevoir"
Case "Taille"
Dim II As Integer
II = Val(Mid(JvdData, InStr(JvdData, " ") + 1))
ReDim TabLabInfo(II)
TailleTab = II
WsckJvd.SendData "TailleOK"
Case "Data"
TabLabInfo(Ipassage) = Mid(JvdData, InStr(JvdData, " ") + 1)
Ipassage = Ipassage + 1
WsckJvd.SendData "Recu"
Case "FinData"
Lect_TabLabInfo
ListeFichiers.Show
Do While (Lvidage)
DoEvents
Loop
ComCoupure_Click
Case Else
End Select
End If
End Sub
0
Rejoignez-nous