Cze wszystkim
Potrzebowałbym makra, które automatycznie sprawia, że pliki SW są tylko do odczytu.
Używam już poniższego makra @.PL z SolidWorks
http://www.lynkoa.com/forum/solidworks/macro-mettre-fichier-lecture-seule
ale potrzebowałbym prostszego makra , które nie prosi mnie o potwierdzenie (chcę mieć możliwość zintegrowania go z narzędziem INTEGRACJA).
Z góry dziękuję.
1 polubienie
Witam
Aby usunąć żądanie walidacji, skomentuj (apostrof na początku wiersza) następujące wiersze (pogrubionym podkreśleniem):
Edycja: Edytuj wiersze pogrubioną czcionką, jak wspomniano wcześniej:
Jeśli GetAttr(PathName) i vbReadOnly to
Jeśli plik jest tylko do odczytu
ret = MsgBox("Ten plik jest tylko do odczytu, czy chcesz do niego pisać?" & vbNewLine_
& vbNewLine & "Pamiętaj, aby zapisać zmiany później", vbYesNo, tytuł)
'Wiadomość z pytaniem, czy chcemy uzyskać do niego dostęp w trybie odczytu i zapisu
Jeśli ret = vbNo, to wyjdź z sub
– Jeśli nie, wychodzimy z programu
SetAttr Nazwa_ścieżki, vbNormal
"Jeśli tak, usuwamy tylko do odczytu w systemie Windows
Part.FileReload (Załaduj ponownie)
ret = Part.ReloadOrReplace(False, Part.GetPathName, True)
Part.FileReload (Załaduj ponownie)
'Wczytujemy ponownie dokument do SolidWorks
Inaczej
'W przeciwnym razie (= odczyt pliku, zapis)
ret = MsgBox("Ten plik jest do odczytu i zapisu, czy chcesz, aby był tylko do odczytu?", vbYesNo, title)
'Wiadomość z pytaniem, czy chcesz uzyskać do niego dostęp w trybie tylko do odczytu
Jeśli ret = vbNo, to wyjdź z sub
– Jeśli nie, wychodzimy z programu
SetAttr nazwa_ścieżki, vbReadOnly
"Jeśli tak, to umieściliśmy w systemie Windows tryb tylko do odczytu
Part.FileReload (Załaduj ponownie)
ret = Part.ReloadOrReplace(False, Part.GetPathName, True)
Part.FileReload (Załaduj ponownie)
'Wczytujemy ponownie dokument do SolidWorks
Zakończ jeżeli:
Koniec subwoofera
3 polubienia
Edit: wiadomość do usunięcia, byłem na czymś innym
Re: Zmodyfikowane jak poprzednio, makro zapisuje pliki tylko do odczytu i tylko do odczytu zapisuje pliki.
Aby mieć tylko zapis, zmodyfikuj koniec makra za pomocą tego:
Jeśli GetAttr(PathName) i vbReadOnly to
Jeśli plik jest tylko do odczytu
'ret = MsgBox("Ten plik jest tylko do odczytu, czy chcesz do niego pisać?" & vbNewLine_
& vbNewLine & "Pamiętaj, aby zapisać zmiany później", vbYesNo, tytuł)
'Wiadomość z pytaniem, czy chcemy uzyskać do niego dostęp w trybie odczytu i zapisu
'Jeśli ret = vbNo, to wyjdź z sub
– Jeśli nie, wychodzimy z programu
SetAttr Nazwa_ścieżki, vbNormal
"Jeśli tak, usuwamy tylko do odczytu w systemie Windows
Part.FileReload (Załaduj ponownie)
ret = Part.ReloadOrReplace(False, Part.GetPathName, True)
Part.FileReload (Załaduj ponownie)
'Wczytujemy ponownie dokument do SolidWorks
Inaczej
Zakończ jeżeli:
Koniec subwoofera
1 polubienie