Quantcast
Channel: Exchange Server Development forum
Viewing all 7132 articles
Browse latest View live

[E2013] [MailApps] [Windows] fest

$
0
0

Can a mail app be localized on the primary language, like "de" and not explicitly for all sub regions like "de-de", "de-at"?

In the mail app manifest version 1.1 I use OfficeApp\FormSettings\Form\DesktopSettings\SourceLocation to specify the apps URL and add an <Override Locale="de-de" Value="apps URL for de-de"/> and have to do that for de-at, de-ch and so on as well.

Can this be simplified to override for Locale="de" or "de-*"?


-- SvenC


Access denied when using powershell in C# code , then running it from IIS

$
0
0

Hi ,

I need to execute below PowerShell command from C# code. This command results Users list who has access permissions to particular user.

Get-Mailbox -resultsize unlimited | Get-MailboxPermission | Where {(!$_.isinherited) -and ($_.User -like 'ADMIN\ExchangeAdmin') -and  ($_.accessrights -contains "fullaccess")  } | Select Identity,User

I am already done it , getting users list successfully in C# code .  code working fine  in visual studio.

but same code running from IIS getting Access denied . i tried to resolve it , but not yet succeed.

please see the link for my code.

http://social.technet.microsoft.com/Forums/office/en-US/f97b1c19-6fb4-4b77-9afa-eeae0988bd64/exchange-service-api-is-not-working-after-code-published-in-iis-but-locally-it-is-working-please?forum=exchangesvrdevelopment

so , i would like to change the code.

below code working fine in IIS . how can i call above power shell command from below C# code ?

 SecureString password = new SecureString();
                 string str_password = "xxxxx";
                 string username = "Administrator@admin.com";
                 foreach (char x in str_password) { password.AppendChar(x); }
                 PSCredential credential = new PSCredential(username, password);

                 WSManConnectionInfo connectionInfo = new WSManConnectionInfo(new Uri("http://ExchangeServer.admin.com/powershell/Microsoft.Exchange"), "http://schemas.microsoft.com/powershell/Microsoft.Exchange", credential);

                 Runspace runspace = RunspaceFactory.CreateRunspace(connectionInfo);

                 PowerShell powershell = PowerShell.Create();

                 PSCommand command = new PSCommand();
                 command.AddCommand("Get-Mailbox");
                 command.AddParameter("ResultSize", int.MaxValue);
                 powershell.Commands = command;
                 runspace.Open();
                 powershell.Runspace = runspace;
                 Collection<PSObject> usersList = powershell.Invoke();
                 runspace.Close();
                 return usersList;

Initially above code also gets Access Denied Exception in IIS, After changing Application pool fromDefault app pool to  MSExchangePowerShellFrontEndAppPool error resolved.


disconnect mailbox not appear in Exchange admin center 2013

$
0
0

Hi,

I have installed exhange 2013. In the Exchange admin center, I have deleted user1 and disabled user2.

When I have looked under the connect a mailbox, there is no mailbox.

I am trying to assign disable mailbox to another user

Please advise

Thanks

message from dedicated mailbox to msmq

$
0
0

As a software developer who develops enterprise applications I would like a mailbox to be set up to send incoming messages to an msmq queue so that a process or processes can pick them up from the queue to start some workflows that process the email.

Can this be done?

Thank you,

Phil Vuollet

No provisioning handler is installed Exchange 2010

$
0
0

Hi All,

Getting the below error from a 2010 Exchange install, any help would be much appreciated!

Going from Exchange 2003, to Exchnage 2010.


Mailbox Role
Failed

Error:
The following error was generated when "$error.Clear(); $arbUsers = @(get-user -Filter {lastname -eq "MSExchApproval 1f05a927-3be2-4fb9-aa03-b59fe3b56f4c"} -IgnoreDefaultScope -ResultSize 1); if ($arbUsers.Length -ne 0) { $mbxname = $arbUsers[0].name; $mbxs = @( get-mailbox -arbitration -Filter {name -eq $mbxname} -IgnoreDefaultScope -resultSize 1 ); if ( $mbxs.length -eq 0) { $dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController); if ($dbs.Length -ne 0) { enable-mailbox -Arbitration -identity $arbUsers[0] -database $dbs[0].Identity; } } }" was run: "No provisioning handler is installed.".

No provisioning handler is installed.

Elapsed Time: 00:02:34


Finalizing Setup
Cancelled

How to Configure MS Exchange 2007 CCR and SCC Cluster in a single system

$
0
0
Hi i want to configure ms-exchange 2007 server for both SCC and CCR. i have two Windows Server 2008 on running on my hyper-v. by using cluster on both hyper v i want to install MS-Exchange 2007 for both SCC and CCR. ideally one windows server 2008 has Active Nodes and another one has passive nodes. please guide me as i am new in the field

deploying MS Exchange Server 2013 on Microsoft Windows Server 2012 R2 Foundation

$
0
0
Hello. can anybody tell me if it is possible to deploy Microsoft Exchange Server 2013 on Microsoft Windows Server 2012 R2 Foundation? thanks.

The Microsoft Exchange Administrator has made a change that requires you quit and restart Outlook - error message

$
0
0

I applied Exchange Server 2013 SP1 and since then some users are getting error message:

'The Microsoft Exchange Administrator has made a change that requires you quit and restart Outlook' on their MS Outlook.

Have tried a number of options including repairing the affected user accounts to no avail.

Any idea on how to resolve this will be appreciated.

NB: This error was not there before applying SP1.


Customize the mail card in Outlook 2010

$
0
0

I create my first Outlook Add-in, who I want to add custom UserProperties to the MailItem in adjoin FormRegion. My problem is why the programe only works to :REGION = MailSpector.UserProperties.Add(PROPERTY_NAME_REGION, Outlook.OlUserPropertyType.olText, true, Type.Missing);  and it didn't work anymore.i can't find out the problem.please.

private const string PROPERTY_NAME_REGION = "CITY"; private Outlook.UserProperty REGION=null; public Outlook.MailItem MailSpector = null; private bool Changed = false; private void FormRegion1_FormRegionShowing(object sender, System.EventArgs e) { MailSpector = (Outlook.MailItem)this.OutlookItem; REGION = MailSpector.UserProperties.Find(PROPERTY_NAME_REGION, Type.Missing); if (REGION != null) { MessageBox.Show("failure"); comboBox1.Text = REGION.Value as string; } else { REGION = MailSpector.UserProperties.Add(PROPERTY_NAME_REGION, Outlook.OlUserPropertyType.olText, true, Type.Missing); } comboBox1.TextChanged += new EventHandler(comboBox1_TextChanged); MailSpector.Write += new Outlook.ItemEvents_10_WriteEventHandler(MailSpector_Write); } void comboBox1_TextChanged(object sender, EventArgs e) { Changed = true; } void MailSpector_Write(ref bool Cancel) { if (Changed) { REGION.Value = comboBox1.Text.Trim(); } }


Remote managment Exchange 2013 SP1 from C# code using Power-Shell.

$
0
0

Hello,

Sorry if I am describing something wrong, but it is first time I am using Microsoft development forum.

I am trying to built library that will manage Exchange remotely using  C# code (VS 2012) and Power-Shell ver.4.0. My workstation and the actual Exchange server physically placed in different domains. In order to test functionalities I am using user that is member of all administrating and management groups in the appropriative domain. Remote Power-Shell is enabled on Exchange.

In order to connect to the Service I am using that part of code :

        internal static bool RedirectionUrlValidationCallback(string redirectionUrl)
        {
            bool result = false;

            var redirectionUri = new Uri(redirectionUrl);  
            if (redirectionUri.Scheme.Equals("https"))
            {
                result = true;
            }

            return result;
        }
		
	internal static ExchangeService ConnectToService(ExchangeVersion version,
                                                         string userName,
                                                         string emailAddress,
                                                         string password,
                                                         string domainName,
                                                         ref Uri autodiscoverUrl)
        {
            ExchangeService service;

            try
            {
                service = new ExchangeService(version);

                service.Credentials = new WebCredentials(userName, password, domainName);

                if (autodiscoverUrl.IsNull())
                {
                    var ads = new AutodiscoverService();

                    // Enable tracing. 
                    ads.TraceEnabled = true;
                    // Set the credentials. 
                    ads.Credentials = service.Credentials;
                    // Prevent the AutodiscoverService from looking in the local Active Directory 
                    // for the Exchange Web Services Services SCP. 
                    ads.EnableScpLookup = false;
                    // Specify a redirection URL validation 
                    //callback that returns true for valid URLs. 
                    ads.RedirectionUrlValidationCallback = RedirectionUrlValidationCallback;

                    // Get the Exchange Web Services URL for the user’s mailbox. 
                    var response = ads.GetUserSettings(emailAddress, UserSettingName.InternalEwsUrl);

                    // Extract the Exchange Web Services URL from the response. 
                    autodiscoverUrl = new Uri(response.Settings[UserSettingName.InternalEwsUrl].ToString()); 

                    // Update  Service Url
                    service.Url = autodiscoverUrl;
                }
                else
                {
                    service.Url = autodiscoverUrl;
                }
            }
            catch (FormatException fe) // The user principal name(email) is in a bad format. UPN format is needed.
            {
                LoggingFactory.LogException(fe);

                return null;
            }
            catch (AutodiscoverLocalException ale)
            {
                LoggingFactory.LogException(ale);

                return null;
            }
            catch (Exception e)
            {
                LoggingFactory.LogException(e);

                return null;
            }

            return service;
        }

Then I am trying to reach existing mailbox of that user, using this part of code :

        try
        {
            var runSpace = getRunspace();
            var pwShell = PowerShell.Create();

            pwShell.Runspace = runSpace;

            var command = new PSCommand();

            command.AddCommand("Get-Mailbox");
            command.AddParameter("Identity", userPrincipalName);
            command.AddParameter("RecipientTypeDetails", recipientType);

            pwShell.Commands = command;
            
            var result = pwShell.Invoke();

            if (result.IsNotNull() && result.Any())
            {
		// TODO : fill appropriative DTO and return it.
            }
            else
            {
		// TODO : send back appropriative error.
            }
            closeRunSpace(runSpace);
        }
        catch (Exception e)
        {
		// TODO : log the exception and send back appropriative error.
        }
	private Runspace getRunspace()
        {
            var runSpaceConfig = RunspaceConfiguration.Create();
            var runSpace = RunspaceFactory.CreateRunspace(runSpaceConfig);

            PSSnapInException snapEx;
            var psInfo = runSpaceConfig.AddPSSnapIn("Microsoft.Exchange.Management.PowerShell.E2010", out snapEx);

            runSpace.Open();

            return runSpace;
        }

        private void closeRunSpace(Runspace runSpace)
        {
            runSpace.Close();
            runSpace.Dispose();
        }

With this part I had problem. I received exception that appropriative Snap-in is not installed on my computer. I had no installation disk of Exchange in order to install Management Tool (as I understand this is the way to add needed part) so I changed run space activation to that part of code :

        private Runspace getRunspace()
        {
            var newCredentials = (PSCredential)null;
            var connectionInfo = new WSManConnectionInfo(new Uri("http://exchange.domainname.local/powershell?serializationLevel=Full"),"http://schemas.microsoft.com/powershell/Microsoft.Exchange",
                                                         newCredentials);
            connectionInfo.AuthenticationMechanism = AuthenticationMechanism.Kerberos;
            var runSpace = RunspaceFactory.CreateRunspace(connectionInfo);

            runSpace.Open();

            return runSpace;
	}

Now I am receiving exception :

"Connecting to remote server exchange.domainname.local failed with the following error message :
[ClientAccessServer=exchange,BackEndServer=exchange.domainname.local,RequestId=....,TimeStamp=...]
Access is denied. For more information, see the about_Remote_Troubleshooting Help topic."

Please help me to understand what I am doing wrong.

Thank you.

Alexander.


Force update to all attendees, and remove popup window

$
0
0

Is there any settings on the Exchange server to force a certain selection here?  I would like to make it Always, update Everyone.  I would also hope that if there is a setting to set for this, it would remove the popup window below.

EWS, MSG.exe and Windows Services

$
0
0

Task is to send notification to a user whenever an email arrives into a public folder. I created a windows service with EWS subscription service and whenever NewMail or Created event occurs, the OnEvent creates a MSG command to send a notification to the user that email is waiting for him in the public folder.

For sending the notification I am using the Process class:

string sCMD = @"MSG.exe " + user + " /Server " + pc + " /Time 0 " + msg

System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
                startInfo.FileName = "cmd.exe";
                startInfo.Arguments = "/c " + sCMD;
                startInfo.UseShellExecute = false;
                startInfo.CreateNoWindow = true;
                startInfo.RedirectStandardError = true;

                startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
                System.Diagnostics.Process proc = new System.Diagnostics.Process();
                proc.StartInfo = startInfo;
              
                proc.Start();
                string error = proc.StandardError.ReadToEnd();
                proc.WaitForExit();

I am receiving the following error message:

‘MSG' is not recognized as an internal or external command, operable program or batch file.

When I ran the same function from a forms application, it works. When I copied it to the Windows Services application, it is throwing the above error.  Any light on how to fix this  will be of great help.

Appreciate your help.

Exchange 2010 Outlook Anywhere issues

$
0
0

I have an Exchange 2010 cas server that works fine with OWA internally and over the internet, and Outlook Anywhere works fine internally. When I try to access it outside the office though, the authentication prompt just keeps coming up for any user I try it on. I have used the connectivity analyzer, and it gives me what I've pasted below. I have disabled OA and uninstalled the RPC, rebooted and installed again and set it back up, with no luck. I've also tried both NTLM and Basic setups on the server side, and they both give the same error from outside the office. I also have checked my firewall settings, and everything is good. The only thing I can think of is that my reverse proxy is causing an issue. We have RHEL 5 with apache doing reverse proxy. Everything else works though, so I'm not sure why OA wouldn't?

RPC Proxy can't be pinged.
 
Additional Details
 
An unexpected network-level exception was encountered. Exception details:
Message: The remote server returned an error: (501) Not Implemented.
Type: Microsoft.Exchange.Tools.ExRca.Extensions.MapiTransportException
Stack trace:
   at Microsoft.Exchange.Tools.ExRca.Extensions.MapiRpcTestClient.PingProtocolProxy(String endpointIdentifier)
   at Microsoft.Exchange.Tools.ExRca.Tests.MapiPingProxyTest.PerformTestReally()
Exception details:
Message: The remote server returned an error: (501) Not Implemented.
Type: System.Net.WebException
Stack trace:
   at System.Net.HttpWebRequest.GetResponse()
   at RpcPingLib.RpcPing.PingProxy(String internalServerFqdn, String endpoint)
   at Microsoft.Exchange.Tools.ExRca.Extensions.MapiRpcTestClient.PingProtocolProxy(String endpointIdentifier)
Elapsed Time: 198 ms.


Exchange Server 2013 // MFCMAPI could connect with errors

$
0
0

While connecting with Exchange Server 2013 I have started facing problem with my application.

My application fails to connect to Exchange with below parameters, then i have tried using MFCMAPI to if everything is okay. MFCMAPI could connect with above errors.

And I have tried with program using below parameters, i still get network error from MAPI call. Can you kindly help, I can provide any additional details needed.

___ props[prop_count].ulPropTag = PR_PROFILE_UNRESOLVED_NAME;

    props[prop_count].Value.lpszA   = <ProfileUnresolvedName>;

    prop_count++;

    props[prop_count].ulPropTag     = PR_PROFILE_UNRESOLVED_SERVER;

    props[prop_count].Value.lpszA   = <mailboxGUID@domain.com>;

    prop_count++;

    // Setting this to TRUE causes OpenMsgStore() to fail with MAPI_E_UNCONFIGURED

    props[prop_count].ulPropTag      = PR_CONVERSION_PROHIBITED;

    props[prop_count].Value.b        = FALSE;

    prop_count++;

    props[prop_count].ulPropTag     = PR_PROFILE_CONFIG_FLAGS;

    props[prop_count].Value.l       = CONFIG_SERVICE /*| CONFIG_PROMPT_FOR_CREDENTIALS | CONFIG_SHOW_CONNECT_UI */;

    prop_count++;

    props[prop_count].ulPropTag     = PR_DISPLAY_NAME;

    props[prop_count].Value.lpszA   = <Mailbox Profile Name>;

    prop_count++;

    //Above setting used to be sufficient to connect using RPC

    //Below parameters added to connect via HTTPS

    LPSTR pwszUser = "domain\\username"; //also triedusername@domain.com AND username

    LPWSTR pwszPassword = L"paswword"; // Password has been encrypted using CryptProtectData

    props[prop_count].ulPropTag = PR_PROFILE_RPC_PROXY_SERVER_W;

    props[prop_count].Value.lpszW = L"https://ProxyHostname.domain";

    prop_count++;

    props[prop_count].ulPropTag = PR_PROFILE_RPC_PROXY_SERVER_AUTH_PACKAGE;

    props[prop_count].Value.l = RPC_C_AUTHN_NONE;      // RPC_C_HTTP_AUTHN_SCHEME_NTLM, RPC_C_HTTP_AUTHN_SCHEME_BASIC

    prop_count++;

    props[prop_count].ulPropTag =  PR_PROFILE_RPC_PROXY_SERVER_FLAGS;

    props[prop_count].Value.l = PRXF_ENABLED | PRXF_SSL;// | PRXF_IGNORE_SEC_WARNING; // | PRXF_IGNORE_SEC_WARNING;

    prop_count++;

    props[prop_count].ulPropTag = PR_PROFILE_RPC_PROXY_SERVER_PRINCIPAL_W;

    props[prop_count].Value.lpszW = L"msstd:certificateserverhostname.domain";

    prop_count++;

    props[prop_count].ulPropTag = PR_PROFILE_AUTH_PACKAGE;

    props[prop_count].Value.l = RPC_C_AUTHN_GSS_NEGOTIATE;                // RPC_C_AUTHN_WINNT, RPC_C_AUTHN_GSS_NEGOTIATE, RPC_C_AUTHN_NONE

    prop_count++;

    props[prop_count].ulPropTag = PR_PROFILE_AUTH_USER_W;

    props[prop_count].Value.lpszA = pwszUser;

    prop_count++;

    props[prop_count].ulPropTag = PR_PROFILE_AUTH_PASSWORD;

    props[prop_count].Value.bin.lpb = dataBlobOut.pbData;

    props[prop_count].Value.bin.cb = dataBlobOut.cbData;

    prop_count++;

    DB( (DB_PR _T("ConfigureExchangeService() About to configureMsgService\r\n"), this ) );

    hres = lpServiceAdmin->ConfigureMsgService( exchUID, 0, config_flags, prop_count, props );___

    I still get MAPI_E_NETWORK not found

  1. Are there any configuration changes need to be done on Exchange Server?
  2. Is there any mistake in above parameters?

Kindly suggest.

I forgot credential of exchange service asmx how to recover it.

$
0
0

Hi,

When i open my web service : http://www.domenName.com/EWS/Exchange.asmx a popup appear for username and password but i don't have  any credentials.

How i get credentials.


2 exchange servers, same domain and custom transport

$
0
0

Hello,

I have seen a lot of questions in the forum related two 2 exchange servers in the same domain. Some of them really clarifies how to configure it.

I have a very specific problem. The servers does not have a TCP/IP connection between them, so we would like to exchange messages between them using a custom "FTP-like" protocol. The idea would be to use the Pickup / Replay directories.

Is it possible to configure a custom transport connector between two exchange servers?

I have setup an architecture where the initial transport connector would use plain FTP to test. This would be my Proof Of Concept to our customer. I would setup a daemon to send messages from the replay to the pickup directory of the other server.

Best regards,

Romano

Search function not working with Exchange 2007 and Outlook 2007

$
0
0

The Search function in outlook is partly available.

I can only search into the inbox with basic search.

Advances search functions an dsearching into subfolders is not available.

Situation:

W2k8R2 + Exchange 2007 (windows search role not installed)

W2k8R2 + Outlook 2007 (windows search role not installed)

Question:

- Does the search role need to be installed on the exchange server to provide full search functionality?

- Does the search role need to be installed on the client (server) to get the search funtion fully available in Outlook?

I can't find this awnser if I search in google of technet, so hope someone can help me with this.

[Exchange-Online][EWS][C#][Windows 7] Move email based on their categories

$
0
0

Hello,

I'd like to move emails in the Inbox to a separate folder based on their category.

I'm using Microsoft.Exchange.WebServices (15.0.0.0) to connect to an ExchangeVersion.Exchange2013_SP1 instance. I'm using C# in VS2013 and the .NET 4 framework but can take examples from other versions if they exist.

I've tried using SearchFilter without much success through ExchangeService.FindItems, but the 'Categories' property seems to be tricky to configure.

Does anyone have an example of how I can select/move emails from a folder based on their category membership?

Thanks,

Mike

[E2013][EWS-XML][EWSTOOL] Calendar item body not visible in outlook

$
0
0

Hi, after upgrading to Exchange 2013 SP1 we experience the issue that appointments created using EWS by our ERP application don't show the body in Outlook 2010/2013. The appointment body is only visible in OWA or on Active Sync devices. Outlook just shows an empty body text. When openening the appointment in OWA and editting the body text, by placing a '.' at the end for example, then the body text is visible in outlook again. This worked fine in CU3 and earlier.

I created a repro scenario using the EWSEditor tool:

https://ewseditor.codeplex.com/

Create an appointment using EWS. Below the request I've sent to Exchange EWS. It creates an appointment on Saturday, March 8th from 22:00 to 23:00 with the following text in the body: ‘Plan the agenda for next week's meeting.’. The request is successful and the appointment is being created. However, the body text is only visible in Outlook Web App, not in Outlook. 

I reproduced this issue in our lab also, so it’s not specific to our production Exchange server, but seems to be a general SP1 issue.

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Body>
    <CreateItem xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
                xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
                SendMeetingInvitations="SendToAllAndSaveCopy" >
      <SavedItemFolderId>
        <t:DistinguishedFolderId Id="calendar"/>
      </SavedItemFolderId>
      <Items>
        <t:CalendarItem xmlns="http://schemas.microsoft.com/exchange/services/2006/types">
          <Subject>Planning Meeting</Subject>
          <Body BodyType="Text">Plan the agenda for next week's meeting.</Body>
          <ReminderIsSet>true</ReminderIsSet>
          <ReminderMinutesBeforeStart>15</ReminderMinutesBeforeStart>
          <Start>2014-03-08T22:00:00</Start>
          <End>2014-03-08T23:00:00</End>
          <IsAllDayEvent>false</IsAllDayEvent>
          <LegacyFreeBusyStatus>Busy</LegacyFreeBusyStatus>
          <Location>Conference Room 721</Location>
        </t:CalendarItem>
      </Items>
    </CreateItem>
  </soap:Body>
</soap:Envelope>

Frank.

Exchange 2013: Read specific dates (with categorie vacation) in foreign mailboxes?

$
0
0

Hi there,

we would like to output a list of all holidays in a list.
We have to search through all existing mailboxes and filter the entries with the category "vacation".

Is there a way using PowerShell or otherwise a list of all vacation days to create?

In any calendar read access is possible

Someone an idea or code example?

Thanks in advance,
regards,

Coyo

Viewing all 7132 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>