Discussions au sujet de NI LabVIEW

取消
显示结果 
搜索替代 
您的意思是: 

Ecrire dans un fichier texte qui est en lecture seule

已解决!
转到解答

Bonjour,

Merci d'avance pour l'aide que vous pouvez m'apporter.

Je voudrais savoir s'il existe un moyen d'écrire dans un fichier texte qui est configuré en lecture seul.

 

En gros j'ai un programme qui va me générer des données que je vais sauvegarder dans des fichier text.

je voudrais les securisés. Je me suis dis que les configuer en lecture seule se serait une solution.

Le soucis c'est que je n'arrive plus à les alimenter en données??? Car labview me dis que je n'ai pas les autorisations.

 

Je suis preneur de toute solution permettant d'empecher que l'on puisse modifier manuellement ces fichier.

Merci à tous votre aide et vos conseil

 

Cordialement,

 

0 项奖励
1 条消息(共 16 条)
5,911 次查看

Je n'ai jamais été confronté à ce type de besoin ... donc je m'y suis collé 10min.

 

je suis parti d'un fichier wordpad (.rtf) ... je l'ai placé manuellement en "lecture seule" via windows.

 

si je fais un "get permission" sur ce fichier (lecture seule), j'ai permissions = 292

 

je place ensuite manuellement le même fichier en "lecture + écriture" (via windows)

 

un get permission sur ce fichier en "lecture+écriture" me donne : permissions = 438

 

et en efet ...

 

si sur ce fichier placé en" lecture seule",  je fais un set permissions avec permissions=438

 

Bingo .... le fichier passe de "lecture seule" en "lecture+écriture". 

 

Le seul souics ....

 

que signifie ce "282" et ce "438" ?

 

quel est la signification de chaque bit ?

 

ou se trouve le bit qui détermine, soit une lecture seule, soit une lecture+écriture ?

 

Je me suis arrêté ici, car je suis en train de bosser sur autres choses.

 

peut-être un point de départ vers une solution à 100%   高兴表情

 

 

A.png

0 项奖励
2 条消息(共 16 条)
5,902 次查看
解答
已被主题作者 Sentenza 接受

ok ... trouvé.

 

c'est le bit n°7 qui conrôle cela.

 

bit 7 = 1 = lecture + écriture (128 en base 10)

bit 7 = 0 = lecture seule

 

apparemment, il semblerait que Windows ignore les autres bits.

 

En effet, j'ai vérifié, ça fonctionne.

 

donc, solution :

 

Set Permission (128) - écriture dans le fichier - Set permission (0) pour replacer le fichier en "lecture seule".

3 条消息(共 16 条)
5,900 次查看

salut,

 

juste pour compléter la réponse de Ouadji :

http://zone.ni.com/reference/en-XX/help/371361B-01/glang/setting_permissions/

 

Adeline.

4 条消息(共 16 条)
5,876 次查看

Salut, Ouadji,

Je viens de prendre connaissance de ta solution, que je vais m'empresser de tester sur mon programme.

Je te tiens au courant

En tous cas Merci!!! beaucoup de ton aide!!!

0 项奖励
5 条消息(共 16 条)
5,868 次查看

merci pour le complément d'infos

0 项奖励
6 条消息(共 16 条)
5,858 次查看

ça fonctionne parfaitement!!!

Je vais voir comment je peut intégré cela dans mon programme afin de guarantir la sécurité des mes données.

 

Merci encore pour ton aide.

0 项奖励
7 条消息(共 16 条)
5,853 次查看

ça fonctionne parfaitement!!!

 

yesss ! content ! 高兴表情

0 项奖励
8 条消息(共 16 条)
5,850 次查看

Salut à tous, si vous voulez modifier ou lire plus d’options sur les fichiers ou dossier, comme :

  • lecture seul (ReadOnly)
  • caché (hidden)
  • système (system)
  • dossier (directory)
  • Archive (archive), qui est le bit d’archive pour signaler qu’un fichier a été archivé
  • Normal
  • temporaire
  • Compressé (compressed)
  • Horsline (offline)
  • Indexé
  • crypté (encrypted) uniquement en lecture

 

en utilisant kernel32.dll, GetFileAttributesA ou SetFileAttributesA

 

File Attributes.png

 

File Attributes IHM.png

 

 

A+

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW |
LabVIEW Architect (CLA) & TestStand Developper (CTD) | LabVIEW Champion
MESULOG | NERYS

9 条消息(共 16 条)
5,832 次查看

Merci également!

c'est très intéressant car cela m'ouvre d'autre porte.

Cordialement,

0 项奖励
10 条消息(共 16 条)
5,825 次查看