Question

J'ai un code qui lit un fichier ini en Javascript, en utilisant des objets du système de fichiers activex.

Ce n'est pas particulièrement efficace, mais fait le travail, la lecture du fichier entier dans un tableau, annexant les modifications et l'écriture de retour.

Le problème que je vais avoir est qu'un autre processus, une application C # XBAP est en train de lire ce fichier ini (en utilisant GetPrivateProfileString) en même temps que je pourrais potentiellement essayer d'écrire dans la JS.

Le javascript échoue que le fichier est verrouillé, ou une partie de celui-ci, et les extrémités de fichiers jusqu'à obtenir endommagé ou même totalement effacé -. Que je suis en train d'écrire de nouveau à chaque fois que tout le fichier

De préférence, ce que j'ai besoin est un moyen de déterminer si un fichier est verrouillé en javascript, les écritures ne sont pas urgentes et je veux laisser tout lit d'abord la fin.

Tout ne peut pas sembler trouver de toute façon de synchroniser ces deux façons complètement séparées de l'accès au fichier.

Était-ce utile?

La solution

Peut être que vous pouvez utiliser try/catch. Si vous ouvrez le fichier pour annexant (OpenTextFile([filename],8)), il devrait soulever une exception. Il devrait en être vrai pour l'écriture / enregistrement du fichier (si le fichier est verrouillé try déclenche une exception).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top