{"id":31716,"date":"2019-10-31T21:42:42","date_gmt":"2019-10-31T18:42:42","guid":{"rendered":"https:\/\/prohoster.info\/blog\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov\/"},"modified":"2019-10-31T21:42:42","modified_gmt":"2019-10-31T18:42:42","slug":"izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov","title":{"rendered":"Sprememba nastavitev programov ob ohranjanju osebnih parametrov","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h2>Pozadina<\/h2>\n<p>\nV eni medicinski organizaciji so uvedli re\u0161itve na osnovi PACS stre\u017enikov Orthanc in DICOM odjemalca Radiant. Med nastavitvijo se je izkazalo, da mora biti vsak DICOM odjemalec opisan na PACS stre\u017enikih na naslednji na\u010din:<\/p>\n<ul>\n<li>Ime odjemalca<\/li>\n<li>AE-ime (mora biti edinstveno)<\/li>\n<li>TCP vrata, ki se samodejno odprejo na strani odjemalca in sprejmejo DICOM preiskave iz PACS stre\u017enika (t.j. stre\u017enik jih kot bi potiska proti odjemalcu \u2013 prvi vzpostavi povezavo)<\/li>\n<li>IP naslov<\/li>\n<\/ul>\n<p>\nPo nastavitvi Radiant odjemalcev smo dobili naslednje informacije za razmislek \u2013 pri vsakem odjemalcu je nastavitve programske opreme z zgoraj navedenimi parametri povzro\u010dilo, da je bil napolnjen fajl <b>pacs.xml<\/b>, ki se je nahajal v uporabni\u0161kem profilu (pot: <b>%APPDATA%RadiantViewerpacs.xml<\/b>). Pri tem se je konfiguracija enega odjemalca od drugega razlikovala vsaj po dveh parametrih (AE-ime je bilo pri vseh razli\u010dno, vrata pa so bila v glavnem enaka, razen pri terminalskih odjemalcih, ki delujejo na istem stre\u017eniku \u2013 tam so bila vrata prav tako dodeljena druga\u010de).<\/p>\n<p>Primer fajla pacs.xml po <noindex><a rel=\"nofollow\" href=\"https:\/\/drive.google.com\/open?id=1yd5q77gKRafZ2rvp6TWy-k1BKQrbrg6f\">linku<\/a><\/noindex>: <\/p>\n<p>Pribli\u017eno pol leta je vse dobro delovalo, sistem je za\u017eivel ... in takrat so nas dosegli \"<b>skriti <\/b><b>podvigi<\/b>\u00bb:<\/p>\n<ul>\n<li>Moramo vklju\u010diti ve\u010d novih PACS stre\u017enikov, ki bodo zamenjali stare (kjer je zmanjkalo prostora na diskih). PACS stre\u017eniki so v virtualnih strojih, vendar tu ne gre za to; <\/li>\n<li>Na nek na\u010din moramo centralizirano spremeniti edinstvene konfiguracije (z dvema razli\u010dnima parametroma) na 200 strojih (njihovo \u0161tevilo se je redno pove\u010devalo); <\/li>\n<li>Glede na hitrost rasti obsega preiskav re\u0161itev ne sme biti enkratna, temve\u010d prenosna in redna (na primer, enkrat na 3-5 mesecev). <\/li>\n<\/ul>\n<p>\nRe\u0161itev je opisana spodaj.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Izbira orodij za re\u0161evanje naloge<\/h2>\n<p>\nSprva so bila prizadevanja najti re\u0161itev, ki bi na strani odjemalca spremenila fajl pacs.xml in vanj vnesti spremembe v seznam PACS stre\u017enikov, ne da bi se dotikali nastavitev AE-ime in TCP vrat. Windows odjemalci so bili takrat na osnovi Windows XP in Windows 7 \u2013 zato so bila prizadevanja napisati kaj tak\u0161nega na osnovi VBScript. Toda \u017eal \u2013 te naloge ni bilo mogo\u010de izvesti, zaradi popolnega pomanjkanja izku\u0161enj pri pisanju \u010desarkoli kompleksnega v tem jeziku. Prizadevanja, da bi na\u0161li in predelali prav tako niso obrodila sadov (tu je treba omeniti, da je bil v mislih \u017ee drug na\u010drt, zato se nisem ukvarjal z VBScript ve\u010d kot 3-4 ure).<\/p>\n<p>Na koncu sem se odlo\u010dil za naslednjo re\u0161itev:<\/p>\n<ul>\n<li>Zberite skupinsko politiko vse datoteke pacs.xml na enem mestu na katerem koli stre\u017eniku v omre\u017enem viru; <\/li>\n<li>Spremenite datoteke mno\u017ei\u010dno (izku\u0161nje z re\u0161evanjem takih nalog so \u017ee bile \u2013 z uporabo Perla); <\/li>\n<li>Prav tako z uporabo skupinskih politik posodobite nastavitve odjemalcev. <\/li>\n<\/ul>\n<p><\/p>\n<h3>Zbiranje datotek s pomo\u010djo skupinske politike<\/h3>\n<p>\nNajla\u017eji del \u2013 ob vstopu stranke v svoj profil izvede nek .bat datoteko, v kateri je zapisano:<\/p>\n<pre><code class=\"vbscript\">echo off\nIf exist %APPDATA%RadiantViewerpacs.xml copy %APPDATA%RadiantViewerpacs.xml srv.test.localpconfigs$pacs-%COMPUTERNAME%-%USERNAME%.xml\n<\/code><\/pre>\n<p>\nTako bodo na stre\u017eniku v skrito viru kopi\u010dene datoteke pacs.xml, v imenu katerih je informacija, s katerega ra\u010dunalnika in katerega uporabnika je bila kopirana ta konfiguracija.<\/p>\n<p>Najte\u017eje je bilo \u2013 po\u010dakati, da ta politika deluje pri vseh uporabnikih.<\/p>\n<h3>Sprememba konfiguracij s pomo\u010djo Perl skripta<\/h3>\n<p>\nPotrebovali bomo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.activestate.com\/products\/activeperl\/downloads\/\">Active Perl<\/a><\/noindex> za Windows podjetja ActiveState, ter modul XML::Writer, ki ga lahko namestite s pomo\u010djo ukaza <b>ppm install XML-Writer<\/b>.<\/p>\n<p>Skripta sama pa je postala dokaj preprosta:<\/p>\n<pre><code class=\"perl\">use XML::Writer;\n \n# Odpremo mapo z poro\u010dili, obdelamo seznam (odstranimo odve\u010dne):\n\t$report_dir = \"C:Perl64WORKPACS-xml3\";\n\topendir(DIR, \"$report_dir\") or die \"Ne morem odpreti mape z poro\u010dili!\";\n\t@report_files = readdir DIR;\n\tshift (@report_files); # odstranimo piko iz elementov polja (.)\n\tshift (@report_files); # odstranimo dve piki iz elementov polja (..)\n#\tprint \"@report_files\";\n\tclosedir(DIR);\n \n# Za\u010dnemo obdelovati datoteke - eno za drugo. Treba je prebrati parameter AET in \u0161tevilko vrata v spremenljivke.\nforeach $analiz_file (@report_files) \n{\n\t$full_path_to_file=\"C:Perl64WORKPACS-xml3\".$analiz_file;\n\topen (INFO, $full_path_to_file);\n \n\twhile ($line = )\n\t{\n\t\t# Spremenljivke $aet in $port vsebujejo edinstvene podatke za vsako XML datoteko:\n\t\tmy ($other1, $aet, $other2, $port, $other3) = split \/\"\/, $line, 5;\n\t\t# \u010ce sre\u010damo vrstico listener - smo pri\u0161li do \u017eelene vrstice in lahko oblikujemo novo XML:\n\t\tif ($other1 =~ 'listener')\n\t\t\t{\n\t\t\t\t# Oblikujemo novo XML z potrebnimi polji in podatki:\n\t\t\t\tmy $writer = XML::Writer-&gt;new(OUTPUT =&gt; 'self', DATA_MODE =&gt; 1, DATA_INDENT =&gt; 2, );\n\t\t\t\t$writer-&gt;xmlDecl('utf-8');\n\t\t\t\t$writer-&gt;startTag('pacs');\n\t\t\t\t$writer-&gt;startTag('listener', ae =&gt; $aet, port =&gt; $port);\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('hosts');\n\t\t\t\t$writer-&gt;startTag('host', name =&gt; 'MRT', ae =&gt; 'ORTHANC', ip =&gt; 'XX.YY.214.17', ts =&gt; '1.2.840.10008.1.2.1', port =&gt; '4242', maxassoc =&gt; '1', allpres =&gt; '0', search =&gt; '1', protocol =&gt; '1', searchcharset =&gt; '', wildcards =&gt; '3', carets =&gt; '0');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('host', name =&gt; 'KT', ae =&gt; 'ORTHANC2', ip =&gt; 'XX.YY.215.253', ts =&gt; '1.2.840.10008.1.2.1', port =&gt; '4242', maxassoc =&gt; '1', allpres =&gt; '0', search =&gt; '1', protocol =&gt; '1', searchcharset =&gt; '', wildcards =&gt; '3', carets =&gt; '0');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('host', name =&gt; 'R', ae =&gt; 'ORTHANC3', ip =&gt; 'XX.YY.215.252', ts =&gt; '1.2.840.10008.1.2.1', port =&gt; '4242', maxassoc =&gt; '1', allpres =&gt; '0', search =&gt; '1', protocol =&gt; '1', searchcharset =&gt; '', wildcards =&gt; '3', carets =&gt; '0');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('host', name =&gt; 'KT-20180501-20180831', ae =&gt; 'ORTHANC4', ip =&gt; 'XX.YY.215.251', ts =&gt; '1.2.840.10008.1.2.1', port =&gt; '4242', maxassoc =&gt; '1', allpres =&gt; '0', search =&gt; '1', protocol =&gt; '1', searchcharset =&gt; '', wildcards =&gt; '3', carets =&gt; '0');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('host', name =&gt; 'KT-20180901-20181130', ae =&gt; 'ORTHANC5', ip =&gt; 'XX.YY.215.250', ts =&gt; '1.2.840.10008.1.2.1', port =&gt; '4242', maxassoc =&gt; '1', allpres =&gt; '0', search =&gt; '1', protocol =&gt; '1', searchcharset =&gt; '', wildcards =&gt; '3', carets =&gt; '0');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;endTag('hosts');\n\t\t\t\t$writer-&gt;startTag('presets');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;startTag('lastsearch', dt =&gt; '4', mfid =&gt; '1048592');\n\t\t\t\t$writer-&gt;endTag();\n\t\t\t\t$writer-&gt;endTag('pacs');\n \n\t\t\t\t# Shranimo kon\u010dni XML v spremenljivko:\n\t\t\t\tmy $xml = $writer-&gt;end();\n\t\t\t\t# Pripravimo datoteko za prepis:\n\t\t\t\t$rewritexml = $full_path_to_file;\n\t\t\t\t# Prepi\u0161emo XML datoteke z novimi podatki:\n\t\t\t\topen (NEWXML, \"&gt; $rewritexml\");\n\t\t\t\tprint NEWXML $xml;\n\t\t\t\tclose (NEWXML);\t\t\t\t\n\t\t\t}\n\t}\n \n}\n<\/code><\/pre>\n<p>\nNa\u010delo delovanja:<\/p>\n<ul>\n<li>Odprite katalog, kjer so zbrane konfiguracije pacs.xml strank in shranite seznam datotek v polje skalarjev (@report_files); <\/li>\n<li>V zanki obdelamo vsako datoteko posebej in jo preberemo vrstico po vrstici; <\/li>\n<li>Z uporabo split razdelimo vsako vrstico na 5 delov, pri \u010demer uporabimo narekovaje kot lo\u010dilo; <\/li>\n<li>Poi\u0161\u010demo vrstico s besedo listener in shranimo v dve spremenljivki edinstvene podatke za vsako datoteko (AE-ime naro\u010dnika in \u0161tevilko TCP vrata); <\/li>\n<li>Nato oblikujemo novo XML datoteko, vanjo zapi\u0161emo edinstvene parametre in nato dodamo potrebno \u0161tevilo PACS stre\u017enikov s svojimi parametri - <b>torej, to je glavni namen vsega tega<\/b>) <\/li>\n<li>Napisali bomo novo XML datoteko preko stare. <\/li>\n<\/ul>\n<p>\nTreba je omeniti, da v resnici ne uporabljam tega skripte popolnoma avtomatsko - v bistvu kopiram zbrane konfiguracije v lo\u010den katalog in nato, ko za\u017eenem skript, jih vse skupaj spremenim. Nato sledi selektivna kontrola - in konfiguracije lahko razdelimo nazaj po napravah.<\/p>\n<h3>Distribucija spremenjenih pacs.xml datotek strankam<\/h3>\n<p>\nNajprej se mi je porodila najpreprostej\u0161a ideja - spremeniti \u017ee delujo\u010di .bat datoteko, ki zbira konfiguracije iz strank, in dodati vrstico:<\/p>\n<pre><code class=\"vbscript\">If exist %APPDATA%RadiantViewerpacs.xml copy \/Y srv.test.localpconfigsnew$pacs-%COMPUTERNAME%-%USERNAME%.xml %APPDATA%RadiantViewerpacs.xml\n<\/code><\/pre>\n<p>\nKon\u010dna .bat datoteka izgleda takole:<\/p>\n<pre><code class=\"vbscript\">@echo off\nIf exist %APPDATA%RadiantViewerpacs.xml copy %APPDATA%RadiantViewerpacs.xml srv.test.localpconfigs$pacs-%COMPUTERNAME%-%USERNAME%.xml\nIf exist %APPDATA%RadiantViewerpacs.xml copy \/Y srv.test.localpconfigsnew$pacs-%COMPUTERNAME%-%USERNAME%.xml %APPDATA%RadiantViewerpacs.xml\n<\/code><\/pre>\n<p><\/p>\n<h3>Zaklju\u010dek<\/h3>\n<p>\nTak\u0161na je \u00ab<b>ro\u010dno narejena<\/b>\u00bb re\u0161itev. Preizkusili smo jo \u017ee dvakrat (septembra 2018 in februarja 2019), doslej ni bilo te\u017eav. Seveda ne posodobi 100% strank, ampak je blizu te vrednosti - preostale popravimo na daljavo. Skript po <noindex><a rel=\"nofollow\" href=\"https:\/\/drive.google.com\/open?id=1z4aPdZoIxE3DOk9LxfPCg44H20wPH12q\">linku<\/a><\/noindex>.<br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/448270\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f \u0412 \u043e\u0434\u043d\u043e\u0439 \u043c\u0435\u0434\u0438\u0446\u0438\u043d\u0441\u043a\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043d\u0435\u0434\u0440\u044f\u043b\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 Orthanc \u0438 DICOM-\u043a\u043b\u0438\u0435\u043d\u0442\u0430 Radiant. \u0412 \u0445\u043e\u0434\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u0438, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 DICOM-\u043a\u043b\u0438\u0435\u043d\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043e\u043f\u0438\u0441\u0430\u043d \u0432 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u0418\u043c\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430 AE-\u0438\u043c\u044f (\u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e) TCP-\u043f\u043e\u0440\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 DICOM-\u043e\u0431\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 (\u0442.\u0435. \u0441\u0435\u0440\u0432\u0435\u0440 \u043a\u0430\u043a \u0431\u044b \u0442\u043e\u043b\u043a\u0430\u0435\u0442 \u0438\u0445 \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31716","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f \u0412 \u043e\u0434\u043d\u043e\u0439 \u043c\u0435\u0434\u0438\u0446\u0438\u043d\u0441\u043a\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043d\u0435\u0434\u0440\u044f\u043b\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 Orthanc \u0438 DICOM-\u043a\u043b\u0438\u0435\u043d\u0442\u0430 Radiant.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f \u0412 \u043e\u0434\u043d\u043e\u0439 \u043c\u0435\u0434\u0438\u0446\u0438\u043d\u0441\u043a\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043d\u0435\u0434\u0440\u044f\u043b\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 Orthanc \u0438 DICOM-\u043a\u043b\u0438\u0435\u043d\u0442\u0430 Radiant.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:42:42+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:42:42+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Sprememba nastavitev programov ob ohranjanju osebnih parametrov | ProHoster","description":"Zgodovina V eni medicinski organizaciji so uvedli re\u0161itve na osnovi PACS stre\u017enikov Orthanc in DICOM odjemalca Radiant.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f \u0412 \u043e\u0434\u043d\u043e\u0439 \u043c\u0435\u0434\u0438\u0446\u0438\u043d\u0441\u043a\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043d\u0435\u0434\u0440\u044f\u043b\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 PACS-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 Orthanc \u0438 DICOM-\u043a\u043b\u0438\u0435\u043d\u0442\u0430 Radiant.","og:url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/izmenenie-nastroek-programm-s-sohraneniem-personalnyh-parametrov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:42:42+00:00","article:modified_time":"2019-10-31T18:42:42+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31716","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 07:29:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:12:32","updated":"2026-01-21 07:29:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/31716","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=31716"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/31716\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=31716"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=31716"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=31716"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}