Открыть список
Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Вышел Wine 0.9.32

Настройка Linux

Wine — реализация Windows API для UNIX-подобных операционных систем. Конечному пользователю она позволяет выполнять в этих системах многие приложения, написанные для Windows.
Читать дальше →
Всего голосов 27: ↑24 и ↓3 +21
Просмотры691
Комментарии 18

Использование P/Invoke: прячем кнопку Пуск и панель задач в Windows

.NET
На Хабре уже было несколько статей, рассказывающих об использовании механизма P/Invoke в проектах на C#. В основном, в статьях был сильный уклон в сторону теории и приводились небольшие показательные примеры.
Я же хочу показать более наглядный пример, показывающий возможности неуправляемого кода — мы будем прятать кнопку Пуск и панель задач.
Читать дальше →
Всего голосов 25: ↑14 и ↓11 +3
Просмотры6.9K
Комментарии 31

Windows API Code Pack для .NET Framework

.NETC#
Недавно вышла библиотека Windows API Code Pack 1.0.1. Это не крупное обновление с множеством новых функций, а, скорее, версия, направленная на исправление ошибок, повышение производительности, добавление примеров и обновление нескольких функций (новые оболочки и т.д).

Но прежде чем углубиться в новую версию Windows Code Pack, давайте рассмотрим, что же он из себя представляет.

Windows 7 предлагает такие новые функции, как, например, панель задач, библиотеки, платформа Sensor and Location. Эти функции предполагают новые сценарии и предоставляют разработчикам новые возможности, чтобы лучшим образом адаптировать свои приложения для Windows 7. Все эти функции доступны через Win32 API. На данный момент в .NET Framework нет пространства имен «Windows 7», и также нет простого способа использовать эти функции из приложений, написанных на управляемом коде. Чтобы упростить доступ к ним разработчикам, использующим управляемый код, в августе мы выпустили 1.0 версию Windows API Code Pack for .NET Framework (сразу после Windows 7 RTM).

Windows API Code Pack – это бесплатная библиотека управляемых исходных кодов, поставляемая Microsoft как есть. Вы должны относиться к ней, как если бы сами написали ее, как если бы это был ваш собственный код. Она охватывает множество новых функций Windows 7, а также некоторые из наиболее важных функций Windows Vista. Можете считать Windows API Code Pack вещью наиболее близкой к «официальному» управляемому API для Windows. Но следует помнить, что служба поддержки Microsoft не обеспечивает этому продукту 24х7 поддержку. Мы верим, что это – замечательное решение и что база кода является очень надежной и высококачественной.

Читать дальше →
Всего голосов 8: ↑4 и ↓4 0
Просмотры6.5K
Комментарии 7

Запускаем Skype без надоедливой Главной страницы

C++
Поводом к написанию заметки послужил недавний вопрос. Меня тоже очень раздражает окно Skype Home, появляющееся при каждом запуске, однако с помощью простой программы на C мне удалось от него избавиться. Получилось нечто вроде Hello World Tutorial по использованию Windows API. Программу можно скачать тут, а исходник с описанием найдете под катом.
Читать дальше →
Всего голосов 48: ↑40 и ↓8 +32
Просмотры19.5K
Комментарии 68

Что в действительности кроет в себе страшная цифра восемь

Разработка под Windows
Эта статья была написана НЕ в виме



Для начала — хочу немного объясниться. Для меня слово «маркетинг» означает «Создание определённого мнения у публики в отношении какого-либо заданного объекта маркетинга». Это вовсе не означает «Сливание дерьма на уши дебилам» или «Рассказ про то, как крут наш бесполезный товар». Хороший маркетинг сделал из БМВ БМВ. То же произошло с Windows XP, которая является одной из самых долгоживущих осей сего мира.

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

Например, «пининг» приложений и сайтов на таскбаре Windows. Знаете, почему в России по стандарту к таскбару пришпилено только 3 значка? Просто потому что люди не знают, что и как туда можно пришпилить.

Маркетинг может сделать и другие чудеса — например, с помощью маркетинга вы можете подавить «Чёрную пропаганду» и начать активно продавать свой продукт. Пример тому — Макдональдс. Мне кажется, что это самый поливаемый гавном ресторанзабегаловка в мире. Но, при всём при этом, это самая распространённая и доходная забегаловка в мире.

Так к чему я это? Тут всё просто: ввиду отсутствия верных данных начинает появляться срач. Срач перерастает в троллинг, а из этого уже можно запросто создать хорошую чёрную пропаганду.

Собственно говоря, вот эта статья показала мне, как всё плохо. Момент заключается в том, что после шести часов отличной видео презентации, тонны текстов и видео-роликов, после отличной маркетинговой компании в США уже отлично знают и понимают, что да как в Windows 8. А вот в России позорно путают поиск по системе и новый магазин приложений.

Что же, дальше, я в подробностях и скриншотах буду выкладывать факты о том, что такое Windows 8, как его едят и с чем потребляют.

И так, что же великого и таинственного таит в себе эта система? Конечно же, новичок скажет вам, что Windows 8 — это новое и отвратительное меню пуск. Но, мы же с вами не люди, мы — хаброчеловеки. Наша задача — глубоко понимать тему разговора.
поехали!
Всего голосов 385: ↑338 и ↓47 +291
Просмотры7.6K
Комментарии 334

Вызываем функции Windows API (и любые другие функции, написанные на языке Си) джаваскриптом из Node.js

Node.JS
Tutorial
Со вчерашнего дня, господа, можно написать вот такой скрипт:

// функция преобразования строки JavaScript (UTF-8) в UTF-16
function TEXT(text){
   return new Buffer(text, 'ucs2').toString('binary');
}

var FFI = require('node-ffi');

// подключаемся к user32.dll
var user32 = new FFI.Library('user32', {
   'MessageBoxW': [
      'int32', [ 'int32', 'string', 'string', 'int32' ]
   ]
});

// диалоговое окно
var OK_or_Cancel = user32.MessageBoxW(
   0, TEXT('Привет, Хабрахабр!'), TEXT('Заголовок окна'), 1
);

и, запустив его в Windows, получить желаемый результат — диалоговое окно Windows.

Это стало возможным потому, что модуль node-ffi (обёртку вокруг той необыкновенно полезной библиотеки libffi, которая используется для вызова библиотек на языке Си не менее чем в восьми других языках) вчера портировали на Windows.

Читать дальше →
Всего голосов 65: ↑51 и ↓14 +37
Просмотры20.6K
Комментарии 33

Что такое TCHAR, WCHAR, LPSTR, LPWSTR,LPCTSTR (итд)

C++API
Tutorial


Многие C++ программисты, пишущие под Windows часто путаются над этими странными идентификаторами как TCHAR, LPCTSTR. В этой статье я попытаюсь наилучшим способом расставить все точки над И. И рассеять туман сомнений.

В свое время я потратил много времени копаясь в исходниках и не понимал что значат эти загадочные TCHAR, WCHAR, LPSTR, LPWSTR,LPCTSTR.
Недавно нашел очень грамотную статью и представляю ее качественный перевод.
Статья рекомендуется тем кто бессонными ночами копошиться в кодах С++.

Вам интересно ??
Прошу под кат!!!
Читать дальше →
Всего голосов 91: ↑64 и ↓27 +37
Просмотры277.4K
Комментарии 85

Прячем кнопку Пуск, панель задач, часики

ПрограммированиеC#
Из песочницы
Tutorial
С помощью нескольких функций Windows API можно скрыть кнопку Пуск, панель задач или отдельные ее элементы. Я это делал раньше с помощью Visual Basic 6.0, Delphi, C++, Visual Basic.NET на Windows 98/Me/XP. Попробуем теперь это сделать с помощью C# на Windows 7. Практической ценности данный пример не имеет, может только ради шутки. Но тем не менее, пример может послужить неплохой демонстрацией возможностей, которые скрывают системные функции Windows.

Немного теории. Очень часто программисты хотят получить доступ к стандартным элементам интерфейса Рабочего стола Windows. Для начинающих программистов будет интересно узнать, что панель задач и кнопка Пуск являются окнами (собственно отсюда и название операционной системы). Поэтому, все, что нам нужно, это получить описатель нужного окна, а затем при помощи соответствующих функций скрыть или показать это окно.
Читать дальше →
Всего голосов 70: ↑16 и ↓54 -38
Просмотры31.7K
Комментарии 9

Рисовалка под Windows на C++, или «Ребята, я тоже ненормальный!» (30+ строк кода)

Ненормальное программирование
Из песочницы
В последнее время Хабр просто пестрит «30-строчными постами»:

Гоночка на JavaScript (30 строк кода)
Крошечный арканоид на JavaScript (30 строк кода)
Крошечный Excel на чистом JavaScript (30 строк кода)
Крошечная змейка на JavaScript (30 строк кода)
Tetris на javascript (в 30+ строк)

Одержимый желанием следовать моде, я тоже решил что-нибудь написать. Но так как с JS у меня отношения сложные, я решил писать на C++ с использованием API, которое так любезно предоставила мне ОС Windows (в народе именуемом WinAPI).

Итак, ближе к телу делу:
Читать дальше →
Всего голосов 77: ↑55 и ↓22 +33
Просмотры34.5K
Комментарии 12

10 главных анонсов Microsoft в 2017 году

Блог компании Microsoft.NETVisual StudioРазработка для интернета вещейXamarin
А вот и уже ставшая традицией предновогодняя публикация с десятью самыми главными анонсами и новинками года от корпорации Microsoft. Чем же запомнится уходящий год с приставкой MS? Заглядывайте под кат!

Читать дальше →
Всего голосов 22: ↑16 и ↓6 +10
Просмотры13.5K
Комментарии 32

Плавное масштабирование текста

Работа с векторной графикойDelphiAPIРазработка под Windows
Масштабирование текста – задача не столь тривиальная, как может показаться с первого взгляда. При простом изменении размера шрифта мы не можем получить плавного и пропорционального изменения ширины текста. Изменения происходят «скачкообразно», что сильно мешает в разработке разного рода редакторов, графиков, диаграмм, везде, где используется масштабирование.

image
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры6.1K
Комментарии 9

Вышел Wine 5.0

Блог компании Дата-центр «Миран»Open source*nixAPIСофт
21 января 2020 года состоялся официальный релиз стабильной версии Wine 5.0 — свободного инструмента для запуска нативных Windows-программ в UNIX-среде. Это альтернативная, свободная реализация Windows API. Рекурсивный акроним WINE означает "Wine Is Not an Emulator".

За этой версией — около года разработки и более 7400 отдельных изменений. Ведущий разработчик Александр Жуйяр (Alexandre Julliard) выделяет четыре:

  • Поддержка модулей в формате PE. Это решает проблемы с разными схемами защиты от копирования, которые проводят сверку системных модулей на диске и в памяти.
  • Поддержка нескольких мониторов и нескольких GPU, включая динамическое изменение настроек.
  • Реимплементация XAudio2 на базе проекта FAudio, открытой реализации звуковых библиотек DirectX. Переход на FAudio позволяет добиться более высокого качества звука в играх, задействовать смешивание громкости, расширенные звуковые эффекты и др.
  • Поддержка Vulkan 1.1.
Читать дальше →
Всего голосов 83: ↑82 и ↓1 +81
Просмотры47.8K
Комментарии 78