LINUX.ORG.RU

win api под linux'ом


0

1

Вообщем, проблема в том, что нужно написать лабы по win api. В винду лезть очень уж не хочется, вдобавок в долгих поисках попалась тема WinApi не в Windowz. Мне не очень понятно, какими путями оно там так получилось. Мог бы кто-нибудь немного разъяснить как , или может у кого исходники остались? :) Заранее благодарна.


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

anonymous_sapiens ★★★★★
()
Ответ на: комментарий от anonymous_sapiens

Интересно, почему именно в российских ВУЗах так крепка любовь к протухшим и одновременно непереносимым технологиям?

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

потому что
1) оно стоит на всех допотопных вузовских машинах
2) смысл обучить принципам написания, а не конкретной технологии
3) самое главное: оно соответствует стандартам образования, изменения в которые вносятся непонятным образом

anonymous_sapiens ★★★★★
()
Ответ на: комментарий от anonymous_sapiens

Обычно так аргументируют паскакаль в школах. Но винапи это уже не принцип написания, а конкретная технология.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Неправда, в украинских вузах то же самое.

Просто учебную программу устанавливают люди, имеющие высокие научные звания, а они эти технологии изучали как раз во времена их расцвета.

vurdalak ★★★★★
()

Поставь виртуалку с xp и не парься.

invy ★★★★★
()
Ответ на: комментарий от PolarFox

Ну, я тоже в немецком вузе слушал курс по winapi (у меня был выбор из нескольких курсов). Ничего плохого не вижу в изучении winapi как с технической так и с экономической точки зрения. Во-первых оно вполне неплохо продуманно, а во-вторых, со знанием winapi работу будет проще найти, ибо 95% таки венда.

invy ★★★★★
()

Даже если умудришься писать под Wine, всё равно виртуальная машина нужна будет, чтобы проверять. Так что лучше не мучай себя.

jeuta ★★★★
()
Ответ на: комментарий от invy

со знанием winapi работу будет проще найти, ибо 95% таки венда

Знание винапи это как знание ламповой электроники. С winapi программисту обычно сталкиваться не приходится.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Не только в российских. Мою группу весь последний год заставляли MFC познавать, тошнит уже. Я, конечно, не программист ни разу, но от кода на MFC почему-то хочется плакать и убивать.

f1xmAn ★★★★★
()
Ответ на: комментарий от f1xmAn

Не только в российских.

Я бы не стал столь уж категорично разделять российское и украинское. По крайней мере сорта маразма одинаковы.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Любое приложение под венду на C/C++ - это рано или поздно встреча с winapi. Не зная его писать под венду не выйдет. Ну только если на .net... и то.

invy ★★★★★
()

все проще
1) ставиш mingw (если неперепутал)
http://www.mingw.org/wiki/LinuxCrossMinGW
это набор для кроскопиляции - подволяет под линуксом получать виндовые exe
с ним там также и все нужные файлы идут типа .h и так далее виндовые
2)делаеш прогу - получаеш под линуксом exe
3) запускаеш exe на wine
4) ????
5) profit !

:)

ae1234 ★★
()
Ответ на: комментарий от invy

Боюсь, у меня теперь на это дело аллергия. :-)
А вот Qt4 мне нравится - просто, удобно, логично, кросплатформенно.

f1xmAn ★★★★★
()
Ответ на: комментарий от PolarFox

Это точно подмечено. Я бы даже сказал, что украинское образование - форк российского.

f1xmAn ★★★★★
()
Ответ на: комментарий от PolarFox

Знание винапи это как знание ламповой электроники. С winapi программисту обычно сталкиваться не приходится.

MFC местами практически тот же WinAPI. И хотя MFC уже сто раз как устарело, оно до сих пор используется — никто не кинется переписывать тонны legacy, коли оно и так работает.

Nightwalker
()
Ответ на: комментарий от PolarFox

ну я уверен на 99%, что в стандарте обучения по этой специальности прописано «изучение winapi».
недовольным можно обращаться в спортлото.

anonymous_sapiens ★★★★★
()
Ответ на: комментарий от Nightwalker

Если надо писать на C++, то из нативного ничего кроме MFC и нет. wpf - только для .net. Получается надо тянуть сторонние библиотеки...

Есть ещё вариант: бэкэнд на C/C++ фронтэнд на .net с wpf, но это значит что только ради фронтэнда надо тащить за собой 40 метров фреймворка.

Остаётся или сторонние библиотеки (qt, wxwidgets и прочие) или опять таки MFC.

invy ★★★★★
()
Ответ на: комментарий от PolarFox

А ещё есть куча кода на всяких адах и фортранах. Но их почему-то народу уже особо и не преподают.

Потому что это — legacy в квадрате. А MFC и WinAPI не только используется, но и востребовано. Натыкался на подобные вакансии.

Nightwalker
()
Ответ на: комментарий от f1xmAn

Я, конечно, не программист ни разу, но от кода на MFC почему-то хочется плакать и убивать.

Самое печальное в том, что нынче начинающие погро^W программисты считают, что MFC — это и есть весь C++. А потом искренне удивляются, когда им показываешь красивый и компактный код в Qt Creator'е.

Nightwalker
()
Ответ на: комментарий от Nightwalker

красивый и компактный код в Qt Creator'е.

Какая связь? «Красивый и компактный» - это как-то зависит от наличия Qt Creatorа?

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

Ах ну да. Тем не менее это не отменяет необходимости знания winapi (скорее даже наоборот).

invy ★★★★★
()
Ответ на: комментарий от slackwarrior

Какая связь? «Красивый и компактный» - это как-то зависит от наличия Qt Creatorа?

Там же подсветка синтаксиса и фолдинг — так что да, зависит :) Покажи я тот же код в блокноте, такого эффекта бы не было.

Nightwalker
()
Ответ на: комментарий от invy

Любое приложение под венду на C/C++ - это рано или поздно встреча с winapi. Не зная его писать под венду не выйдет. Ну только если на .net... и то.

Я, читая твой пост, на минуту засомневался что сейчас 2012 год. Есть же .NET, активно продвигаемый MS, есть Qt, который позволяет писать переносимо и без WinAPI, зачем winapi?

С winapi столкнешься только если нужны какие-то специфичные вещи.

mono ★★★★★
()
Ответ на: комментарий от Nightwalker

Я таких не видел. Да и у нас по специальности сначала изучается обыкновенный С++. Правда в MSVC6.0. Та еще дрянь.

f1xmAn ★★★★★
()
Ответ на: комментарий от mono

Есть же .NET, активно продвигаемый MS

CLR? Не, не нужно.

есть Qt

Ну есть. А ещё есть GTK, wxWidgets и ещё куча всего.

С winapi столкнешься только если нужны какие-то специфичные вещи.

Разрабатывать ПО под системой, не зная её API и как она работает - это очень плохо. Так что даже с ознакомительной целью разработчик ПО должен иметь представление о том как оно там работает.

invy ★★★★★
()

нужно написать лабы

В Job, двоешник

anonymous
()
Ответ на: комментарий от mono

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

val-amart ★★★★★
()

Мог бы кто-нибудь немного разъяснить как


я вроде задала конкретный вопрос. зачем разводить весь этот флуд? Тема исчерпала себя, в топку.

asyaka
() автор топика
Ответ на: комментарий от invy

Пардон, простите невежду великодушно. :-)

f1xmAn ★★★★★
()

Гугл вошел таки со мной в астральную связь и выдал таки гайд по winelib. Всем спасибо, все свободны. Плюшка детектед :)

asyaka
() автор топика
Ответ на: комментарий от trycatch

можно придумать ещё 100500 задач, например....

Напиши на .net переключатель раскладки (а то не нравится alt+shift и ctrl+shift). Желаю удачи! :)

invy ★★★★★
()
Ответ на: комментарий от Nightwalker

спокуха, я тут в питере видел вакансии с прологом. Ичо?

anonymous
()

MFC мало того что живо, оно еще и развивается (новые компоненты добавлены в VC 2008 Feature Pack, код был куплен у BCG Software).

Но WinAPI часто используется для вывода мааленьких окошечек, которые понадобились внезапно и MFC уже не запользовать

Uter
()
Ответ на: комментарий от anonymous_sapiens

смысл обучить принципам написания, а не конкретной технологии

нужно написать лабы по win api

Лол

buddhist ★★★★★
()
Ответ на: комментарий от buddhist

Ничего и никого я тут не развожу. Если ада/фортран активно используются в мейнстриме — просветите. Имел в виду только это.

Nightwalker
()
Ответ на: комментарий от buddhist

Что такое мейнстрим?

Поймали на слове, задумался :)

MFC появился в 92-м, Ада — в 80-м, Фортран — вообще в 57-м. Сравнение, может, и не совсем корректное, но современными эти технологии точно не назовешь.

Военные разработки и научные расчеты — там что, понятия legacy не существует? Или за 30+ лет ничего нового/годного не придумали?

Nightwalker
()

winelib это несовсем то - теже надо резултьтат показывать
через mingw - кроскомпилятор - получаеш под линуксом exe виндовые и тестирует в wine
все что нужно
напрямую юзат winelib это несовсемто

ae1234 ★★
()
Ответ на: комментарий от Nightwalker

Или за 30+ лет ничего нового/годного не придумали?

Хорошо это или плохо, но не придумали.

Во всякой оборонке активно юзается Ада, Модула-2 и прочие паскалеподобные языки, а в науке и инженерии Фортран и Лисп. В крайнем случае код на фортране перегоняется на Си/Питон с помощью автоматических средств.

buddhist ★★★★★
()
Ответ на: комментарий от buddhist

Или за 30+ лет ничего нового/годного не придумали?

Хорошо это или плохо, но не придумали.

Не знаю насчет оборонки, но вот языки «for computing» вроде плодятся один на другом. Неужто ни один не взлетел?

И да, не знаю, может ли это служить каким-либо доказательством, но вот здесь написано:

The core component of this course will be familiarization with three legacy programming languages: Fortran, Ada, and Cobol

P.S. Я ж не кричу «Закопать Аду и Фортран!»; просто мне кажется, что они вполне подпадают под определение legacy (уже покрылось пылью, но еще справляется с возложенными задачами).

Nightwalker
()
Ответ на: комментарий от val-amart

ну вот и как под виндой без винапи получить максдрес сетевухи?

Qt:

QString QNetworkInterface::hardwareAddress () const

Знание WinAPI нужно только для общего развития.

unfo ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.