2009-04-16 6 views
1

Je voulais utiliser ce code pour envoyer des archives avec Xmodem: http://www.java2s.com/Code/Java/Network-Protocol/JModemsimplecommunicationsprogram.htmLe partage des ports série (protocole modem + dialer)

Dans ce cas, je veux établir une connexion d'accès à distance entre deux ordinateurs et envoyer un fichier binaire. Mais ce code ne me laisse pas définir un numéro de téléphone à composer après avoir configuré le port et avant de transférer le fichier. Est-il possible de partager le port avec une autre application qui compose le numéro de téléphone? Vous ne pouvez pas simplement envoyer les anciennes commandes de modem sur la ligne série après avoir connecté le port série?

Répondre

2

Donc, après vous être connecté, envoyez ATDT suivi du numéro de téléphone. Ensuite, attendez la chaîne de réponse "connect" (ou les réponses d'erreur). Envoyez ensuite le fichier.

Voir: http://en.wikipedia.org/wiki/Hayes_command_set

+0

J'ai un problème de conception. Jmodem est utilisé avec des câbles null-modem. Je veux utiliser le même programme pour envoyer un pour recevoir. Pour composer et répondre, j'ai besoin d'utiliser des événements (Ring, CD, DataAvailable .. etc), mais je ne sais pas comment distinguer l'événement dataavailable de la transaction de données avec le modem. Avez-vous des recommandations? –

+1

Hi, Les modems compatibles Hayes disposent d'un mode de données et d'un mode de commande. Le mode de données est utilisé pour envoyer des données à l'autre modem. Toutes les données que vous envoyez sont considérées comme des données de l'autre côté. Le mode de commande est utilisé pour envoyer des commandes au modem (comme le cadran, etc.). S'il vous plaît voir: http://en.wikipedia.org/wiki/Command_and_Data_modes_%28modem%29 Ainsi, lorsque vous avez composé et connecté l'autre modem, le modem automatique passe en mode de données. Envoyez vos données et terminez le mode de données avec "+++". Déconnectez maintenant la connexion via la commande de raccrochage. Que voulez-vous dire des câbles null modem? Vous n'utilisez pas de modems? – RoccoD

1

Si vous ne voulez pas modifier le programme JModem, alors pourquoi ne pas utiliser un programme de communications à part entière qui fournit toutes les fonctionnalités dont vous avez besoin? (Il y en avait une tonne, mais celle qui me vient à l'esprit est kermit). Ce serait plus facile que d'essayer de faire fonctionner deux programmes différents.

Si vous êtes un programmeur Java, suivez la suggestion de RoccoD et modifiez le code JModem pour composer un numéro.

0

Dans unix ou linux, ce n'est pas un problème - il suffit d'ouvrir le port série de tous les programmes simultanément. Vous pouvez également utiliser le chat ou attendre.

dans Windows Vous avez besoin d'un serveur qui va multiplexer les flux de données

Questions connexes