Эквивалент Win32 ________ в .NET - PullRequest
       3

Эквивалент Win32 ________ в .NET

3 голосов
/ 14 октября 2010

Недавно мне нужно было найти .NET-эквивалент ShellExecute, и я с радостью смог быстро найти ответ в StackOverflow.Но наверняка где-то должен быть документ или список, который бы дал мне этот ответ чуть быстрее.

Когда я перешел от программирования ANSI к UNICODE, у Microsoft была эта удобная страница рутинных отображений:

http://msdn.microsoft.com/en-us/library/Aa272889

Я поместил некоторые из них в текстовый файл, и когда мне нужно было узнать, скажем, Unicode-эквивалент strlen, я бы просто извлек файл для strlen, и я быget:

C:\> grep strlen textfuncs.txt

strlen    _tcsclen
strlen    _tsclen

Кто-нибудь знает или знает такой список для Win32 -> .NET?

Ответы [ 6 ]

6 голосов
/ 14 октября 2010

Часть проблемы здесь заключается в том, что Win32 не мигрирует напрямую в .NET.

.NET Framework обрабатывает большинство функций Win32 API, но это происходит совсем по-другому.Вместо того, чтобы пытаться просто отобразить функции, он отображает функциональность в типы фреймворков.Иногда это очень прямое отображение, но иногда множество различных API смешиваются вместе, а части переписываются в управляемом коде и т. Д.

Как правило, быстрый поиск вашей «цели» вместо функции приводит кочень быстро включите нужный API.

3 голосов
/ 14 октября 2010

Поскольку .net API является полноценной библиотекой объектов. Было бы трудно иметь однозначное соответствие между win32 и .net. Но в большинстве случаев быстрый поиск в Google поможет вам найти нужный класс.

2 голосов
/ 14 октября 2010

Разве вы не ищете что-то вроде этого:

Карта API Microsoft Win32 для Microsoft .NET Framework

1 голос
/ 14 октября 2010

Этот сайт отлично подходит для взаимодействия .NET с Win32:

PInvoke.net: интерактивная вики

Там есть записи "Альтернативный управляемый API", где они доступны, но из-за мелкозернистой природы Win32 API может не быть эквивалента в управляемом API. Один метод в управляемом API может потребовать несколько вызовов Win32 из нескольких библиотек для выполнения одной задачи.

Запрашивать точные эквиваленты - это все равно, что спрашивать, что такое управляемый эквивалент инструкции на языке ассемблера, когда управляемый язык / API не обеспечивает такой уровень детализации.

1 голос
/ 14 октября 2010

Не совсем отображение 1-1, но вы можете найти большинство вещей, связанных с использованием вызовов Win32 в .NET, по адресу: http://www.pinvoke.net.

Здесь есть множество функций Win32, связанных документов и примеров кодов.

0 голосов
/ 14 июля 2011

Я только что наткнулся на эту страницу, которая довольно неплохо обеспечивает то, что я искал:

C # для программистов MFC - Карта быстрых эквивалентов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...