Pull to refresh
51

Погромист

15
Subscribers
Send message
В том и сила робомобиля, что для сбора «компромата» он будет использовать те же самые сертифицированные производителем сенсоры, благодаря которым его и выпустили на дорогу общего пользования.

И оспорить «он сам нарисовал в фотошопе мой номер на левой тачке, моя синяя!» — не получится.

Так глядишь и правоприменительная практика подтянется.

(ехидно так) Слава роботам!
> По ПДД ограничение скорости на трассе 90. Весь поток движется 110. С какой скоростью должен двигаться робомобиль?

sarcasm on

Не только ехать 90, но и фотографировать всех дятлов, едущих 110, и сдавать в ближайший пункт ГИБДД ;-)

А на выезде с трассы будет пробка, да, среди всех шумахеров, которым внезапно надо оплатить штраф прежде чем продолжить движение.

sarcasm off
У оптимистов в треде — одна и та же методологическая ошибка. Заключается она вот в чем.

Государству (любому) не нужны успешные коммерческие продукты как факт их наличия.

Это проблема коммерсов — таковые выпускать. Вот пусть и занимаются — как хотят. Хоть опенофис дотачивают, хоть с нуля пишут. Вот когда (и если) напишут и получившийся продукт начнет продаваться по всему миру — тогда и поговорим про «получить родному государству лицензий сколько надо с баальшой скидкой», сейчас-то чего воздух сотрясать.

И минкомсвязи — тем более не нужны «заменители». У них-то и суппорт и сырцы от микрософта получить — нет проблем.

Им надо решать их государственные задачи, и именно от этого и надо плясать.

Вот примеры таких задач:

  • автоматизация оборота государственных же бумажек. Налоги, страховые и пенсионные платежи, учет военнообязанных и т. д. и т. п.
  • упрощение и автоматизация сопутствующей деятельности. Например — реестры, базы учета больных, предпринимателей, телефонных номеров, должников, нарушителей ПДД и т. п.
  • прочая охранная деятельность, начиная от природоохранной.

Вся эта автомагизация им нужна с единственной целью — упростить и удешевить государственную же деятельность. Снизить издержки!

Беда в том, что с нынешними заморочками и зарплатами — ни толковые менеджеры ни толковая молодежь не рвется им в этом помогать. Частью от того что неправильно понимают что надо делать, частью от зашоренности и излишней веры в жупелы пропаганды. И Минкомсвязи — тоже весьма приблизительно понимает что же им требуется. Или наоборот — понимает, но не озвучивает.

Более того, по факту талантливые ребята им только мешают.

Например — а давайте мы в школах заменим уиндоусь на ненужное подставить. Окей, давайте. Что это даст хотя бы ГорОНО? Кроме проблем? «ЗаШШЫТу» от корпорации зла? Не смешите.

А вот интерактивный аудио-курс по математике для 7го класса для слабовидящих — давайте его сюда!!!

Но увы — не делают энтузиасты интерактивную геометрию. Им все больше с ветряными мельницами повоевать.

Потому — вот так.

Отсюда и попытка принудить нормальных коммерсов, которые из принципа не участвуют в попилах и тендерах, к участию в государство-ориентированном софтостроении. Налог — кнут, 10 ярдов — пряник.
Чтобы что-то сделать — надо для начала начать делать. Хоть что-нибудь полезное.

Но полезное — не получается. В силу так сказать специфики, и я сейчас не про откаты. А про приверженность к блок-схемам, водопадам и прочим чудесам бородатых годов. Вроде бы начинают что-то, задействуют серьезные и мощные НИИ, но на супер-ТЗ тратят пятилетку. На кону мочало — начинай сначала… И в итоге — есть только ТЗ, устаревшее чуть более чем полностью.

И тогда бросаются в другую крайность — давайте мы за три копейки закажем у НИИ Говна и Торфа. И на выходе — «школьный портал».

Как говорил попугай из «Аладдина», весь мир — дело хорошее, но надо же постепенно продвигаться.
Почему «палача»? Из моей статьи по-моему следует прямо обратное.

Станет работать еще чуточку труднее, цены возрастут, сервис станет (почти незаметно) хуже.

Но это в общем-то все.

За исключением опенсорца, конечно. Ну, вот так получилось, да. Надеюсь те кто принимает решения — прочтут по диагонали то что я писал, и позаботятся об некоторых исключениях для софта который и так бесплатен. Чтобы не дать возможности всем внезапно стать филантропами, но и не запретить опенсорц как явление.

Хотя я не очень себе представляю — как это у них выйдет без РАО-штрих и подобных структур.
Ну что вы. Всего лишь расписываю самый худший вариант из всех возможных.

Скорее всего — будет не так. Например, добавят какое-то условие, что для продуктов под «список лицензий FOSS» претензий нет. Предоставил сырцы под GPL — свободен, отойди от кассы, не занимай очередь…

Но фильтрацию обязательно введут в том или ином виде. САПР в подарок к майке за $20K работать не будет.
Реакцию фискалов на такой трюк представляете? Вот именно, «бесплатного софта не существует».

Тем более что такие попытки заколотить эту лазейку уже были. Но так как не было ясно — зачем, то оставили так.

А вы предлагаете обоснование — зачем запретить free software ;-)
Это будет нелегко сделать.

Купить софт и не поставить его на баланс — это дыра. Купить актив и не отразить его в документах? Да вы что.

Продать и не уплатить налог — вообще турма сидеть.

Это ж как налог на соль. Вещь в хозяйстве необходимая, попробуй не купи. Где покупка — там и продажа, где продажа — там и налоги. И нет, «соль в подарок» не вариант.
Как можно уплатить с оборота лицензий, если деньги получаются за майки и кепки

Мне что-то кажется — вы путаете таки теплое с мягким.

Поверьте, это не я путаю.

Я как раз очень хорошо знаю что такое опенсорц, регулярно коммичу куда попало, и получаю с этого на пиво.

Но вы поймите и налоговиков, которым этот самый «продажа кепок» ломает всю стройную схему пополнения казны. Опенсорц просто не вписывается в вопрос "+10% с оборота". И его будут выпиливать.

Лично для меня это выглядит так же дико, как и борьба с мультфильмом «Ну погоди». Но не могу не признать — сказавши «А», придется говорить и «Бэ». Поступления в казну надо же будет как-то обеспечивать? А тут дырища размером с кратер Тихо. Будут обносить рогатками, бетонировать, а возможно и переименуют.

В лучшем случае — создадут какое-нибудь РАО-штрих под руководством вездесущего Мигалкова, он и обеспечит сборы +10% с опенсорца, для поддержки «национальных авторов бесплатного софта».

С моей личной колокольни, я бы наоборот требовал тотального об-опенсорсивания софта, поставляемого в государственные и муниципальные организации. И даже бы требовал в обязательном порядке принятия патчей вендором от всех желающих. Но у меня не стоит задачи собрать денег на мост в Керчи ;-)
Про железячников — я имел в виду скорее тех кто пытается клепать свои железки.

При полном отсутствии местной современной электронной базы (как называется адруинка по русски? ага, вот именно), безумных налогах, постоянном общении с таможней, при отсутствии хоть каких-то льгот, при том что в Китае банально дешевле… и все равно — умудряются и разрабатывать и производить мелкими сериями. Снимаю шляпу.

Про опенсорс. Если вместо софта можно продавать кепки и наклейки — то это отличная схема ухода от новых налогов. Вот наклейки, вот с них налоги, а софт — в подарок. Если уж закручивать гайки — то оставлять такую дыру не следует.

Отсюда следствие — софт бесплатный как свобода, и софт бесплатный как пиво — или будет обкладываться произвольными поборами «на основании реестра платных аналогов» (с кого? с того кто его поставил, больше не с кого ж), или будет негласно запрещен в огромном числе мест. Второе вероятнее. Что в свою очередь вызовет к жизни продавцов бесплатного софта (это будет выглядеть так же дико как и звучит), чтобы было с кого брать десятину и легализовать хоть какое-то использование.

Поставил себе хром? Беги в кассу, хех.
(ехидно) может описать как я с линукса на вин переходил и «ниасилил»? 8-) Чорт, осилил же. Было б желание…

А потом обратно вернулся в линукс, и пробовал еще, и снова успешно! и опять пингвины. Как напоминание попыток переезда у меня есть два раздела в NTFS по 50 гигов каждый, с Win7 и Win8.1 ;-)
На всякий случай, Wine prefix architecture = 64bit Win7, но cl.exe строго 32битный. Или VC/bin/cl.exe или VC/bin/x86_amd64/cl.exe. Собственно, cl.exe из VC/amd64 также запускается с ключом /help, но я им не пользуюсь по историческим причинам и потому далее даже не смотрел.

Что еще интересного может быть — затрудняюсь, спрашивайте.

Машинка стандартная 4x Intel® Core(TM) i5-2400 CPU @ 3.10GHz, так что не в ней дело судя по всему.

vik@pc:~> rpm -qa | grep wine
wine-mp3-1.1.39-12.12.i586
wine-gecko-2.24-43.1.noarch
wine-mono-4.5.2-9.6.noarch
wine-32bit-1.7.16-334.1.x86_64
wine-1.7.16-334.1.x86_64

Даавно не апдейтил, да…
Я в папку с компилятором досыпал таких файлов (все — 32битные!)

msvcp110.dll
msvcr110.dll
vccorlib110.dll

а также досыпал туда же

RcDll.dll

И добавил в путь не саму папку с компилятором а вижловую Common7\IDE. В вайне сказал что имитируется Win7.

Вроде все…

Рекомендую еще запускать это из wineconsole. Саму wineconsole — из терминала, и в терминал поглядывать — оно там пишет чего не хватает.
Зато как показывает практика — очень даже обязательно если в инсталляторе надо что-то поменять 8-)

А вообще живые маки для тестов нужны. Я бы с огромным удовольствием проверял бы разные версии в облаке, но увы.
Оно и так декларативное — вот к примеру

; CS6 64bit

Source: ..\..\image\bin\x64\cs6\VDP.pln; DestDir: {code:GetS6Path|{pf}\Adobe\Adobe InDesign Server CS6\}\Plug-ins; DestName: VDP.pln; Flags: ignoreversion overwritereadonly replacesameversion 64bit; Check: CheckedIndesignS6

Source: ..\..\image\bin\x64\cs6\(VDP Resources)\idrc_CLST\*.*; DestDir: {code:GetS6Path|{pf}\Adobe\Adobe InDesign Server CS6\}\Plug-ins\(VDP Resources)\idrc_CLST; Flags: ignoreversion overwritereadonly replacesameversion 64bit; Check: CheckedIndesignS6
...

; CS6 32bit in 64bit

Source: ..\..\image\bin\x86\cs6\VDP.pln; DestDir: {code:GetS6Path_32in64|{pf32}\Adobe\Adobe InDesign Server CS6\}\Plug-ins; DestName: VDP.pln; Flags: ignoreversion overwritereadonly replacesameversion 64bit; Check: CheckedIndesignS6_32in64

Source: ..\..\image\bin\x86\cs6\(VDP Resources)\idrc_CLST\*.*; DestDir: {code:GetS6Path_32in64|{pf32}\Adobe\Adobe InDesign Server CS6\}\Plug-ins\(VDP Resources)\idrc_CLST; Flags: ignoreversion overwritereadonly replacesameversion 64bit; Check: CheckedIndesignS6_32in64
...

; CS6 32bit
Source: ..\..\image\bin\x86\cs6\VDP.pln; DestDir: {code:GetS6Path|{pf}\Adobe\Adobe InDesign Server CS6\}\Plug-ins; DestName: VDP.pln; Flags: ignoreversion overwritereadonly replacesameversion; Check: CheckedIndesignS6

Source: ..\..\image\bin\x86\cs6\(VDP Resources)\idrc_CLST\*.*; DestDir: {code:GetS6Path|{pf}\Adobe\Adobe InDesign Server CS6\}\Plug-ins\(VDP Resources)\idrc_CLST; Flags: ignoreversion overwritereadonly replacesameversion; Check: CheckedIndesignS6
...


Однако это не отменяет кучу функций CheckedXXX + GetXXXX ;-)

А в них надо проверить что

— соответствующий (в данном случае) индезигн сервер установлен
— архитектура соответствует
— установка этого компонента не отменена на предыдущем шаге
— реальный путь надо найти в реестре, а он зависит от версии адобовского инсталлятора.

Вот и получается много.
На самом деле я огород начал городить именно для того чтобы не разводить много сборочных машин.

Сначала их было две — мой ноут на котором все собирается до сих пор, и мак-мини под столом чтобы этот клятый PackageMaker попинать мышой over VNC. Однако после того как под столом мак-мини стало три, пришлось смотреть на хакинтош ;-)

Я даже одно время собирался сборку под мак выкинуть в облако — но пока не сложилось. И когда уже Apple догадается ферму под своими маками раздавать как микрософт — свой Azure…

И вот благодаря микрософту и «компилятору нужна виста+» — перебрался на хост из виртуалок. Компиляет, что забавно. Эдакий странный казус, самому смешно.
Мне нужен был cl.exe.

Однако в свое время devenv у меня работал тоже, 2003 и 2005 так точно.
wine у меня и так есть, а реактось еще ставить надо. Проще уиндоусь восемь тогда поставить.
Это вы еще скрипты InnoSetup не видели, вот где ад и израиль.

function GetPathByCOM(product: string; clsid: string; is32bit: boolean) : string;
var
  v: string;
  k, e, k1: string;
  i: integer;
begin
  k := 'CLSID\{' + clsid + '}\LocalServer32';
  k1:= 'CLSID\{' + clsid + '}\InprocServer32';
  e := '{pf}';
  
  if IsWin64 and Is64BitInstallMode then begin
    if is32bit then begin
      e := '{pf32}';
      k := 'Wow6432Node\' + k;
      k1:= 'Wow6432Node\' + k1;
    end;
  end;

  if RegQueryStringValue(HKEY_CLASSES_ROOT, k, '', v) then begin
    i := Pos('/', v);
    if i > 0 then v := Trim(Copy(v, 1, i - 1));
    Result:= ExtractFilePath(v);
  end else if RegQueryStringValue(HKEY_CLASSES_ROOT, k1, '', v) then begin
    i := Pos('/', v);
    if i > 0 then v := Trim(Copy(v, 1, i - 1));
    Result:= ExtractFilePath(v);
  end else
    Result := ExpandConstant(e) + '\Adobe\' + product + '\';
end;

function GetPathByApp(product: string; ver: string; is32bit: boolean): string;
var
  v: string;
  k, e: string;
  i: integer;
begin
  k := 'SOFTWARE\Adobe\' + ver + '\ApplicationPath';
  e := '{pf}';
  
  if IsWin64 and Is64BitInstallMode then begin
    if is32bit then begin
      e := '{pf32}';
      k := 'SOFTWARE\Wow6432Node\Adobe\' + ver + '\ApplicationPath';
    end;
  end;

  if RegQueryStringValue(HKEY_LOCAL_MACHINE, k, '', v)
  then begin
     i := Pos('/', v);
     if i > 0 then begin 
     	v := Trim(Copy(v, 1, i - 1));
     	v:= ExtractFilePath(v);
     end;
     Result:= v;
  end else
     Result := ExpandConstant(e) + '\Adobe\' + product + '\';
end;

function GetPathByShell(product: string; ver: string; is32bit: boolean): string;
var
  v, e, k: string;
  i: integer;
begin
  k := ver + '\shell\launch\command';
  e := '{pf}';           \
  
  if IsWin64 and Is64BitInstallMode then begin
    if is32bit then begin
      e := '{pf32}';
      k := 'Wow6432Node\' + k;
    end;
  end;
  
  if RegQueryStringValue(HKEY_CLASSES_ROOT, k, '', v)
  then begin
     i := Pos('/', v);
     if i > 0 then v := Trim(Copy(v, 1, i - 1));
     Result:= ExtractFilePath(v);
  end else
     Result := ExpandConstant(e) + '\Adobe\' + product + '\';
end;

function GetPathBySetup2(product: string; ver: string; is32bit: boolean): string;
var
  v, e, k: string;
begin
  k := 'SOFTWARE\Adobe\' + ver;
  e := '{pf}';

  if IsWin64 and Is64BitInstallMode then begin
    if is32bit then begin
      e := '{pf32}';
      k := 'SOFTWARE\Wow6432Node\Adobe\' + ver;
    end;
  end;

  if RegQueryStringValue(HKEY_LOCAL_MACHINE, k, 'InstallPath', v)
  then begin
     Result:= v;
  end else
     Result := ExpandConstant(e) + '\Adobe\' + product + '\';
end;

function GetPathBySetup(product: string; ver: string; is32bit: boolean): string;
begin
  Result := GetPathBySetup2(product, ver + '\Installer', is32bit);
end;

function GetPathByCOMsAnd32bit(product: string; clsid: string; clsi2: string): string;
var
  v: string;
  k1, k2, e: string;
begin
  k1 := 'CLSID\{' + clsid + '}\LocalServer32';
  k2 := 'CLSID\{' + clsi2 + '}\LocalServer32';
  e := '{pf}';
  
  if IsWin64 and Is64BitInstallMode then begin
    e := '{pf32}';
    k1 := 'Wow6432Node\' + k1;
    k2 := 'Wow6432Node\' + k2;
  end;
  
  if RegQueryStringValue(HKEY_CLASSES_ROOT, k1, '', v)
  then
    Result := ExtractFilePath(v)
  else if RegQueryStringValue(HKEY_CLASSES_ROOT, k2, '', v) then
    Result := ExtractFilePath(v)
  else
    Result := ExpandConstant(e) + '\Adobe\' + product + '\';
end;

function isAdobeAvailable(product: string; is32bit: boolean) : Boolean;
var
  k: string;
begin
  k := 'SOFTWARE\Adobe\' + product;
  if IsWin64 and Is64BitInstallMode then begin
    if is32bit then begin
      k := 'SOFTWARE\Wow6432Node\Adobe\' + product;
    end;
  end;

  if RegKeyExists(HKEY_LOCAL_MACHINE, k)
  then begin
    Result:=True;
  end;
end;


и таких ужастиков на 250К кода ;-)
Есть пара батников под спойлерами, внутри sed и awk. Только они из MinGW а не из CygWin.

Information

Rating
Does not participate
Location
München, Bayern, Германия
Date of birth
Registered
Activity