Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ExtractShortPathName в .NET, есть ли аналог функции из Делфи в .NET? 
V
    Опции темы
sn8p
Дата 7.11.2006, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 29.3.2006

Репутация: нет
Всего: 1



в Delphi есть фунуция function ExtractShortPathName(const S: FullFileName): string;
(Returns 8.3 format for a given full path and file name.)

есть ли аналог в .NET?

Зарание спасибо!
PM MAIL   Вверх
Wanderer2019
Дата 7.11.2006, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: 7
Всего: 17



ты бы написал что хоть эта функция делает...
что такое 8.3 формат???

вообще для работы с дерикториями и путями служит System.IO.Path
PM ICQ MSN   Вверх
sn8p
Дата 7.11.2006, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 29.3.2006

Репутация: нет
Всего: 1



Цитата(Wanderer2019 @  7.11.2006,  12:25 Найти цитируемый пост)
ты бы написал что хоть эта функция делает...
что такое 8.3 формат???

Это когда из C:\Program Files\ получается че-та типа C:\PROGRA~0\ или как-то так. То есть формат 8.1 - это когда не более 8 символов в имени и 3 в расширении.

Добавлено @ 12:44 
чета в System.IO.Path ниче похожего не могу найти.
PM MAIL   Вверх
Дрон
Дата 7.11.2006, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург

Репутация: 24
Всего: 93



Цитата(Wanderer2019 @  7.11.2006,  12:25 Найти цитируемый пост)
что такое 8.3 формат???

Ого! smile))
В такие моменты чувствуешь себя стариком (хотя ты и старше меня smile ) -- 8.3 означает 8 символов на имя файла + 3 на расширение -- короткое имя.  Наследие ДОС smile

Код

using System;
using System.Text;
using System.Runtime.InteropServices;

namespace ConsoleApplication1
{
    class WinAPI
    {
        private const int MAXLENGHT = 1024;

        [DllImport("kernel32.dll", CharSet = CharSet.Auto)]
        private static extern int GetShortPathName(
            [MarshalAs(UnmanagedType.LPTStr)]
            string longPath,
            [MarshalAs(UnmanagedType.LPTStr)]
            StringBuilder shortPath,
            int cchBuffer);

        public static string GetShortPathName(string longPath)
        {
            StringBuilder shortPath = new StringBuilder(MAXLENGHT);
            GetShortPathName(longPath, shortPath, MAXLENGHT);
            return shortPath.ToString();
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(WinAPI.GetShortPathName("C:\\Program Files"));
            Console.Read();
        }
    }
}


Единственное, что нашёл -- использовать WinAPI
Источник + слегка переработано мной.



--------------------
Да. Именно так.
PM   Вверх
sn8p
Дата 7.11.2006, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 29.3.2006

Репутация: нет
Всего: 1



Дрон, спасибо! я думаю такой вариант подойдет.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1808 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.