Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];

Вниз

Как открыть веб-папку программно?   Найти похожие ветки 

 
clickmaker ©   (2007-07-13 15:06) [0]

Ту что с SharePoint, Web DAV. В ИЕ она открывается путем установки флажка в диалоге Open, либо через скрипт со спаном специального вида.. а вот программно как?
в WebBrowser.Navigate параметров не нашел...


 
Lacmus ©   (2007-07-27 16:22) [1]

EXPLORER.EXE ,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{BDEADF00-C265-11d0-BCED-00A0C90AB50F}\путь папки


 
clickmaker ©   (2007-07-27 16:31) [2]


> [1] Lacmus ©   (27.07.07 16:22)

ого! про гуиды была у меня мысля, но до такого не допер
Спасибо


 
clickmaker ©   (2007-07-27 16:45) [3]

а нет... рано радовался.
Так работает только, если есть такая папка в NetHood, т.е. либо открывали ее уже, либо надо создавать сначала


 
Lacmus ©   (2007-07-27 17:53) [4]

Есть предположение, что Internet Explorer создает при открытии папку в NetHood


 
clickmaker ©   (2007-07-30 13:39) [5]


> [4] Lacmus ©   (27.07.07 17:53)
> Есть предположение, что Internet Explorer создает

создает
но только после успешного логина на веб-шару
Должен же быть какой-то программный способ создания ярлыка на веб-папку, аналог мастера Add network place...


 
Rouse_ ©   (2007-07-31 13:00) [6]

My Network Places?
так этож ярлыки:

program GetNetHoodData;

{$APPTYPE CONSOLE}

uses
 Windows, SysUtils, ShlObj, ActiveX, ComObj;

const
 CSIDL_NETHOOD = $13;

Function GetFileNamefromLink(LinkFileName: String): String;
var
 MyObject: IUnknown;
 FileInfo: TWin32FINDDATA;
 WidePath: array [0..MAX_PATH - 1] of WideChar;
 Buff: array [0..MAX_PATH - 1] of Char;
begin
 MyObject := CreateComObject(CLSID_ShellLink);
 StringToWideChar(LinkFileName, WidePath, SizeOf(WidePath));
 (MyObject as IPersistFile).Load(WidePath, STGM_READ);
 (MyObject as IShellLink).GetPath(Buff, MAX_PATH, FileInfo, SLGP_UNCPRIORITY);
 Result := Buff ;
end;

var
 Path: ShortString;
 SR: TSearchRec;
begin
 CoInitialize(nil);
 SetLength(Path, 255);
 if SHGetSpecialFolderPath(0, @Path[1],
   CSIDL_NETHOOD, False) then
 begin
   Path := IncludeTrailingPathDelimiter(String(PChar(@Path[1])));
   FindFirst(Path + "*.*", faAnyFile, SR);
   repeat
     if DirectoryExists(Path + SR.Name) then
       Writeln(SR.Name + " : " +
         GetFileNamefromLink(Path + SR.Name));
   until FindNext(SR) <> 0;
 end;
 Readln;
end.


 
clickmaker ©   (2007-07-31 13:37) [7]

сделал через создание ярлыка на папку в nethood с последующим открытием.


 
Lacmus ©   (2007-07-31 16:39) [8]

>clickmaker ©   (30.07.07 13:39) [5]



uses
 ActiveX, ComObj, ShlObj;

const
 csWebFolders = "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{BDEADF00-C265-11d0-BCED-00A0C90AB50F}";

procedure CreateWebFolder(aParent: HWnd; const aWebFolder: WideString);
var
 BindCtx: IBindCtx;
 BindOpts: BIND_OPTS;
 dwFlags, dwNumChars: DWord;
 DesktopFolder: IShellFolder;
 MAlloc: IMAlloc;
 WebFolderPIDL: PItemIDList;
 wsPath: WideString;
begin
 dwFlags := 0;
 OleCheck(SHGetDesktopFolder(DesktopFolder));
 OleCheck(CreateBindCtx(0, BindCtx));
 FillChar(BindOpts, SizeOf(BindOpts), 0);
 BindOpts.cbStruct := SizeOf(BindOpts);
 BindOpts.grfMode  := STGM_CREATE;
 OleCheck(BindCtx.SetBindOptions(BindOpts));
 wsPath := csWebFolders + "\" + aWebFolder;
 OleCheck(DesktopFolder.ParseDisplayName(aParent, Pointer(BindCtx), PWideChar(wsPath),
          dwNumChars, WebFolderPIDL, dwFlags));
 OleCheck(SHGetMAlloc(MAlloc));
 MAlloc.Free(WebFolderPIDL)
end;


 
clickmaker ©   (2007-08-01 10:56) [9]


> [8] Lacmus ©   (31.07.07 16:39)

да, это более изящный метод, чем создание ярлыка вручную )
спасибо еще раз


 
$OOFFOO   (2007-08-10 09:35) [10]

ого! а мастера тоже задают вопросы?!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.052 c
2-1190782024
savyhinst
2007-09-26 08:47
2007.10.21
Стрелка


2-1191060534
Pacific
2007-09-29 14:08
2007.10.21
Процесс


2-1191150933
SveTTT
2007-09-30 15:15
2007.10.21
Привязка клавиатуры к кнопкам, у которых используется Tag


3-1182149600
ambhtr
2007-06-18 10:53
2007.10.21
Как скопировать информацию из таблицы на сайте?


2-1191224656
Lexx1
2007-10-01 11:44
2007.10.21
.ini не создается(





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский