//내문서
Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments);

시스템 특수 폴더에 대한 디렉터리 경로를 검색하는 데 사용되는 열거 상수를 지정합니다.

 

필드

필드

AdminTools 48

개별 사용자를 위한 관리 도구를 저장하는 데 사용되는 파일 시스템 디렉터리입니다. MMC(Microsoft Management Console)에서는 사용자 지정 콘솔을 이 디렉터리에 저장하며 사용자와 로밍합니다. .NET Framework 4에 추가되었습니다.

ApplicationData 26

현재 로밍 사용자의 애플리케이션 관련 데이터에 대한 공용 리포지토리로 사용되는 디렉터리입니다. 로밍 사용자는 네트워크에 있는 둘 이상의 컴퓨터에서 작업합니다. 로밍 사용자 프로필은 네트워크의 서버에서 유지되고 사용자가 로그온할 때 시스템으로 로드됩니다.

CDBurning 59

CD에 기록될 때까지 기다리는 파일을 위한 스테이징 영역으로 사용되는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

CommonAdminTools 47

컴퓨터의 모든 사용자를 위한 관리 도구가 들어 있는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

CommonApplicationData 35

모든 사용자가 사용하는 애플리케이션 관련 데이터에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

CommonDesktopDirectory 25

모든 사용자의 바탕 화면에 나타나는 파일 및 폴더가 들어 있는 파일 시스템 디렉터리입니다. 이 특수 폴더는 Windows NT 시스템에서만 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonDocuments 46

모든 사용자에게 공통된 문서가 들어 있는 파일 시스템 디렉터리입니다. 이 특수 폴더는 Shfolder.dll이 설치된 Windows NT 시스템, Windows 95 및 Windows 98 시스템에서 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonMusic 53

모든 사용자에게 공통된 음악 파일의 리포지토리로 사용되는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

58

이 값은 이전 버전과의 호환성을 위해 Windows Vista에서 인식되지만 특수 폴더 자체는 더 이상 사용되지 않습니다. .NET Framework 4에 추가되었습니다.

CommonPictures 54

모든 사용자에게 공통된 이미지 파일의 리포지토리로 사용되는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

CommonProgramFiles 43

전체 애플리케이션에서 공유되는 구성 요소에 대한 디렉터리입니다.

비 x86 프로세스의 x86 공통 프로그램 파일 디렉터리를 가져오려면 ProgramFilesX86 멤버를 사용합니다.

CommonProgramFilesX86 44

Program Files 폴더입니다. .NET Framework 4에 추가되었습니다.

CommonPrograms 23

애플리케이션 간에 공유되는 구성 요소에 대한 폴더입니다. 이 특수 폴더는 Windows NT, Windows 2000 및 Windows XP 시스템에서만 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonStartMenu 22

모든 사용자의 시작 메뉴에 나타나는 프로그램 및 폴더가 들어 있는 파일 시스템 디렉터리입니다. 이 특수 폴더는 Windows NT 시스템에서만 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonStartup 24

모든 사용자의 시작 폴더에 나타나는 프로그램이 들어 있는 파일 시스템 디렉터리입니다. 이 특수 폴더는 Windows NT 시스템에서만 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonTemplates 45

모든 사용자가 사용할 수 있는 템플릿이 들어 있는 파일 시스템 디렉터리입니다. 이 특수 폴더는 Windows NT 시스템에서만 사용할 수 있습니다. .NET Framework 4에 추가되었습니다.

CommonVideos 55

모든 사용자에게 공통된 비디오 파일의 리포지토리로 사용되는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

Cookies 33

인터넷 쿠키에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

Desktop 0

실제 파일 시스템 위치가 아니라 논리 데스크톱입니다.

DesktopDirectory 16

데스크톱에서 실제로 파일 개체를 저장하는 데 사용되는 디렉터리입니다. 가상 폴더인 데스크톱 폴더 자체와 이 디렉터리를 혼동하지 마세요.

Favorites 6

사용자가 즐겨찾는 항목에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

Fonts 20

글꼴이 들어 있는 가상 폴더입니다. .NET Framework 4에 추가되었습니다.

History 34

인터넷 기록 항목에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

InternetCache 32

임시 인터넷 파일에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

LocalApplicationData 28

현재 로밍하지 않은 사용자가 사용하는 애플리케이션 관련 데이터에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

LocalizedResources 57

지역화된 리소스 데이터가 들어 있는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

MyComputer 17

내 컴퓨터 폴더입니다. Environment.GetFolderPath 메서드에 전달되면 MyComputer 열거형 멤버는 항상 빈 문자열(“”)을 생성합니다. 내 컴퓨터 폴더의 경로가 정의되지 않았기 때문입니다.

MyDocuments 5

내 문서 폴더입니다. 이 멤버는 Personal에 해당합니다.

MyMusic 13

내 음악 폴더입니다.

MyPictures 39

내 그림 폴더입니다.

MyVideos 14

사용자에 속한 동영상의 리포지토리로 사용되는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

NetworkShortcuts 19

네트워크 환경 가상 폴더에 있을 수 있는 링크 개체가 들어 있는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

Personal 5

문서에 대한 공용 리포지토리로 사용되는 디렉터리입니다. 이 멤버는 MyDocuments에 해당합니다.

PrinterShortcuts 27

프린터 가상 폴더에 있을 수 있는 링크 개체가 들어 있는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

ProgramFiles 38

프로그램 파일 디렉터리입니다.

비 x86 프로세스에서 ProgramFiles GetFolderPath(Environment+SpecialFolder) 메서드로 전달하면 비 x86 프로그램의 경로가 반환됩니다. 비 x86 프로세스에서 x86 프로그램 파일 디렉터리를 가져오려면 ProgramFilesX86 멤버를 사용합니다.

ProgramFilesX86 42

x86 Program Files 폴더입니다. .NET Framework 4에 추가되었습니다.

Programs 2

사용자의 프로그램 그룹이 들어 있는 디렉터리입니다.

Recent 8

사용자가 가장 최근에 사용한 문서가 들어 있는 디렉터리입니다.

Resources 56

리소스 데이터가 들어 있는 파일 시스템 디렉터리입니다. .NET Framework 4에 추가되었습니다.

SendTo 9

보내기 메뉴 항목이 들어 있는 디렉터리입니다.

StartMenu 11

시작 메뉴 항목이 들어 있는 디렉터리입니다.

Startup 7

사용자의 시작 프로그램 그룹에 해당하는 디렉터리입니다. 사용자가 로그온하거나 Windows를 시작할 때마다 시스템에서 이러한 프로그램이 시작됩니다.

System 37

시스템 디렉터리입니다.

SystemX86 41

Windows System 폴더입니다. .NET Framework 4에 추가되었습니다.

Templates 21

문서 템플릿에 대한 공용 리포지토리로 사용되는 디렉터리입니다.

UserProfile 40

사용자의 프로필 폴더입니다. 애플리케이션에서는 이 수준에 파일이나 폴더를 만들 수 없으며 ApplicationData에서 참조되는 위치 아래에 데이터를 두어야 합니다. .NET Framework 4에 추가되었습니다.

Windows 36

Windows 디렉터리 또는 SYSROOT입니다. %windir% 또는 %SYSTEMROOT% 환경 변수에 해당합니다. .NET Framework 4에 추가되었습니다.

 

 

[원문] 

docs.microsoft.com/ko-kr/dotnet/api/system.environment.specialfolder?view=net-5.0

반응형
블로그 이미지

visualp

c#, java

,

c# 윈도우 공유폴더 접근

C# 2020. 10. 15. 12:46

using System.Reflection;
using System.Runtime.InteropServices;
using System.ComponentModel;

public class YourClass {
[DllImport("mpr.dll")]
private static extern int WNetAddConnection2A(ref NetResource pstNetRes, string psPassword, string psUsername, int piFlags);
[DllImport("mpr.dll")]
private static extern int WNetCancelConnection2A(string psName, int piFlags, int pfForce);

[StructLayout(LayoutKind.Sequential)]
private struct NetResource {
    public int iScope;
    public int iType;
    public int iDisplayType;
    public int iUsage;
    public string sLocalName;
    public string sRemoteName;
    public string sComment;
    public string sProvider;
}

private const int RESOURCETYPE_DISK = 0x1;

 

 

 

private void LoginToShare(string serverName, string shareName, string user, string password) {
        string destinationDirectory = string.Format(@"\\{0}\{1}", serverName, shareName);

        NetResource nr = new NetResource();
        nr.iScope = 2;
        nr.iType = RESOURCETYPE_DISK;
        nr.iDisplayType = 3;
        nr.iUsage = 1;
        nr.sRemoteName = destinationDirectory;
        nr.sLocalName = null;

        int flags = 0;
        int rc = WNetAddConnection2A(ref nr, password, user, flags);

        if (rc != 0) throw new Win32Exception(rc);
    }

    private void LogoutFromShare(string serverName, string shareName) {
        string destinationDirectory = string.Format(@"\\{0}\{1}", serverName, shareName);
        int flags = 0;
        int rc = WNetCancelConnection2A(destinationDirectory, flags, Convert.ToInt32(false));
    }

 

c#을 이용하여 공유폴더 접근하는 방법

 

[원문] http://www.nullskull.com/q/10116970/accessing-shared-folder-on-a-network-using-c-code.asp

반응형
블로그 이미지

visualp

c#, java

,

using System;

class Program {
    static void Main(string[] args) {
        System.AppDomain.CurrentDomain.UnhandledException += UnhandledExceptionTrapper;
        throw new Exception("Kaboom");
    }

    static void UnhandledExceptionTrapper(object sender, UnhandledExceptionEventArgs e) {
        Console.WriteLine(e.ExceptionObject.ToString());
        Console.WriteLine("Press Enter to continue");
        Console.ReadLine();
        Environment.Exit(1);
    }
}

// c#에서 Console(콘솔) 어플리케이션에서 글로벌 에러 처리
   반복 작업시 유용하게 이용

반응형
블로그 이미지

visualp

c#, java

,

c# mediaplayer 재생 하기 , c# play mp3 by media player

 

c#  add mediaplayer component
Choose
 Tool Box Items->Com Components->Windows Media Player

player.URL="재생 주소";
주소만 할당해주면 재생됨

반응형
블로그 이미지

visualp

c#, java

,

c# cefsharp filedownload 구현

C# 2020. 10. 15. 12:26

/IDownloadHandler 의 구현체를 만들어서  DownloadHandler 를 등록 해주면된다.
// 아래소스는 updated에서 다운로드되는 상황을 체크 할 수 있으며
// downloadItem.IsComplete 다운로드가 완료되었을 때 파일을 실행하도록 구현함
// 상황에 따라서 확장자에 맞게 처리 하면됨.

 chromebrowser.DownloadHandler = new DownloadHandler();
==========================================================
internal class DownloadHandler : IDownloadHandler

    {

        public object OnDownloadUpdatedFired { get; private set; }

        public void OnBeforeDownload(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)

        {

            if (!callback.IsDisposed) {

                using (callback) {

                    callback.Continue(@"C:\Users\" +

                             System.Security.Principal.WindowsIdentity.GetCurrent().Name +

                             @"\Downloads\" +

                             downloadItem.SuggestedFileName,

                         showDialog: true);

                }

            } 

            

        }

        public void OnDownloadUpdated(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)

        {

            if (downloadItem.IsComplete)

            {

                if (@downloadItem.FullPath != "")

                {

                    Process.Start(@downloadItem.FullPath);

                }

            }

        }

    }

반응형
블로그 이미지

visualp

c#, java

,